24 #define re_assert(cond) arb_assert(cond)
26 #ifndef _GLIBCXX_STRING
37 bool didMatch()
const {
return start != std::string::npos; }
42 behind_last(behind_last_)
45 re_assert(behind_last != std::string::npos);
49 size_t pos()
const {
return start; }
50 size_t len()
const {
return behind_last-start; }
56 return s.substr(
pos(),
len());
72 void perform_match(
const char *
str,
size_t offset)
const;
81 return failed ?
GBS_global_string(
"Invalid RegExpr '%s' (Reason: %s)", expression.c_str(), failed->c_str()) :
NULp;
95 #error RegExpr.hxx included twice
const RegMatch * subexpr_match(size_t subnr) const
size_t posBehindMatch() const
return string(buffer, length)
GB_ERROR get_error() const
const char * GBS_global_string(const char *templat,...)
RegExpr(const std::string &expression_, bool ignore_case)
RegMatch(size_t start_, size_t behind_last_)
const RegMatch * match(const std::string &versus, size_t offset=0) const
const std::string * has_failed() const
#define __ATTR__USERESULT
std::string extract(const std::string &s) const
size_t subexpr_count() const
GB_write_int const char s