24 #include "../CommonLib/utilit.h" 52 : options_(opts), tableptr_(tableptr)
56 options_.set_all_options( options_.all_options() | PCRE_UCP );
72 : re_full_(NULL), re_partial_(NULL), match_limit_(0)
76 : re_full_(NULL), re_partial_(NULL), match_limit_(0)
80 : re_full_(NULL), re_partial_(NULL), match_limit_(0), opts_(opts)
84 RML_RE(
const string& pat,
const vector<BYTE>& RegExpTables)
85 : re_full_(NULL), re_partial_(NULL), match_limit_(0)
98 : opts_(re.opts_), re_full_(NULL), re_partial_(NULL), match_limit_(0)
117 const string&
pattern()
const {
return pattern_; }
120 void pattern(
const string &pattern) { clear(); Init(pattern); }
124 const string&
error()
const {
return error_; }
132 bool FullMatch(
const StringPiece& text,
150 bool PartialMatch(
const StringPiece& text,
168 bool Consume(StringPiece* input,
186 bool FindAndConsume(StringPiece* input,
204 bool Replace(
const StringPiece& rewrite,
string *str)
const;
206 int GlobalReplace(
const StringPiece& rewrite,
string *str)
const;
208 bool Extract(
const StringPiece &rewrite,
const StringPiece &text,
string *out)
const;
224 bool DoMatch(
const StringPiece& text,
227 const Arg*
const* args,
int n)
const;
231 int NumberOfCapturingGroups();
236 static bool isComplexPattern(
const std::string &pat);
239 void Init(
const string& pattern);
253 int TryMatch(
const StringPiece& text,
261 bool Rewrite(
string *out,
262 const StringPiece& rewrite,
263 const StringPiece& text,
268 bool DoMatchImpl(
const StringPiece& text,
271 const Arg*
const args[],
278 pcre* Compile(
Anchor anchor);
void operator=(const RML_RE &re)
Definition: pcre_rml.h:102
pcre * re_full_
Definition: pcre_rml.h:63
Options opts_
Definition: pcre_rml.h:62
pcre * re_partial_
Definition: pcre_rml.h:64
Definition: pcre_rml.h:46
~RML_RE()
Definition: pcre_rml.h:112
void RmlPcreMakeTables(vector< BYTE > &character_table, MorphLanguageEnum Langua)
Definition: PCRE/pcre_rml.cpp:66
string error_
Definition: pcre_rml.h:65
Options(const RE_Options &opts, const BYTE *tableptr=NULL)
Definition: pcre_rml.h:51
RML_RE(void)
Definition: pcre_rml.h:71
string pattern_
Definition: pcre_rml.h:61
RML_RE(const string &pat, const Options &opts)
Definition: pcre_rml.h:79
Definition: pcre_rml.h:33
int match_limit_
Definition: pcre_rml.h:66
pcrecpp::StringPiece StringPiece
Definition: pcre_rml.h:43
void pattern(const string &pattern)
Definition: pcre_rml.h:120
pcrecpp::RE_Options opts
Definition: pcre_rml.h:34
const BYTE * table
Definition: pcre_rml.h:35
Definition: pcre_rml.h:217
RML_RE(const string &pat, const vector< BYTE > &RegExpTables)
Definition: pcre_rml.h:84
unsigned char BYTE
Definition: utilit.h:94
RML_RE(const string &pat)
Definition: pcre_rml.h:75
Options(void)
Definition: pcre_rml.h:50
Definition: pcre_rml.h:41
RML_RE(const RML_RE &re)
Definition: pcre_rml.h:97
pcrecpp::Arg Arg
Definition: pcre_rml.h:30
MorphLanguageEnum
Definition: utilit.h:162
const string & error() const
Definition: pcre_rml.h:124
const string & pattern() const
Definition: pcre_rml.h:117
pcrecpp::RE_Options RE_Options
Definition: pcre_rml.h:44
Definition: pcre_rml.h:216
const BYTE * tableptr_
Definition: pcre_rml.h:49
Anchor
Definition: pcre_rml.h:215
pcrecpp::RE_Options options_
Definition: pcre_rml.h:48