#ifndef WRAPREGEX_H #define WRAPREGEX_H #include #include #include #include #include "contexthandler.h" using namespace std; class WrapRegex { public: WrapRegex ( const string& pattern, bool matchCase, const string& replaceParameter = "", const int arrayLengthParameter = 60 ); virtual ~WrapRegex(); string replaceGlobal ( const string& buffer, int *matchCount ); int matchPatternGlobal ( string &buffer, vector &match_vector, unsigned elementCount, int context = 0 ); private: string replace; const int arrayLength; int returnValue; bool disabled; pcre *patternStructure; pcre_extra *patternExtraStructure; int *matchArray; string getInterpolatedString_ ( char *buffer, char *source ); string getSubpattern_ ( char *buffer, unsigned subpattern ); int matchPatternGlobal_ ( const char *buffer, size_t buflen, vector &matchVector, unsigned elementCount, int context ); }; #endif