34 #ifndef BLOCXX_PERL_REGEX_HPP_INCLUDE_GUARD_HPP_
35 #define BLOCXX_PERL_REGEX_HPP_INCLUDE_GUARD_HPP_
36 #include "blocxx/BLOCXX_config.h"
39 #ifdef BLOCXX_HAVE_PCRE
43 #ifdef BLOCXX_HAVE_PCRE_H
46 namespace BLOCXX_NAMESPACE
59 class BLOCXX_COMMON_API PerlRegEx
67 typedef blocxx::Array<int> MatchVector;
76 typedef blocxx::Array<match_t> MatchArray;
90 PerlRegEx(
const String ®ex,
int cflags = 0);
100 PerlRegEx(
const PerlRegEx &ref);
114 PerlRegEx& operator = (
const PerlRegEx &ref);
145 bool compile(
const String ®ex,
169 String errorString()
const;
174 String patternString()
const;
179 int compileFlags()
const;
184 bool isCompiled()
const;
272 bool execute(MatchVector &sub,
277 bool execute(MatchArray &sub,
348 String replace(
const String &str,
440 bool match (
const String &str,
442 int eflags = 0)
const;
448 mutable String m_error;
454 #endif // BLOCXX_HAVE_PCRE_H
455 #endif // BLOCXX_HAVE_PCRE
457 #endif // BLOCXX_PERL_REGEX_HPP_INCLUDE_GUARD_HPP_