|
CppCMS
|
This is a simple wrapper of PCRE library. More...
#include <booster/booster/perl_regex.h>
Public Types | |
| typedef char | value_type |
Public Member Functions | |
| regex (regex const &) | |
| regex const & | operator= (regex const &) |
| regex (std::string const &pattern, int flags=normal) | |
| void | assign (std::string const &pattern, int flags=normal) |
| int | flags () const |
| std::string | str () const |
| unsigned | mark_count () const |
| bool | match (char const *begin, char const *end, int flags=0) const |
| bool | match (char const *begin, char const *end, std::vector< std::pair< int, int > > &marks, int flags=0) const |
| bool | search (char const *begin, char const *end, int flags=0) const |
| bool | search (char const *begin, char const *end, std::vector< std::pair< int, int > > &marks, int flags=0) const |
| bool | empty () const |
Static Public Attributes | |
| static const int | perl = 0 |
| Constant for expression type - Perl Compatible Regex. | |
| static const int | normal = 0 |
| Constant for expression type - synonym of perl, default. | |
| static const int | icase = 0x100 |
| Make case insensitive comparison New in CppCMS 1.2. More... | |
| static const int | utf8 = 0x200 |
| Assume that input is UTF-8 so for example '.' would match UTF-8 code point New in CppCMS 1.2. More... | |
This is a simple wrapper of PCRE library.
It is designed to be used with sub_match, match_results, regex_match and regex_search template functions.
It provides API similar to ones of Boost.Regex but it is also much simplified.
| booster::regex::regex | ( | regex const & | ) |
Copy regular expression. Note. This is much more efficient then creating a new expression with same patter.
| booster::regex::regex | ( | std::string const & | pattern, |
| int | flags = normal |
||
| ) |
Create regular expression using a patter and special flags. Note, at this point flags should be normal or perl only (which are equivalent). May be extended in future.
Throws regex_error in case of invalid expression.
| void booster::regex::assign | ( | std::string const & | pattern, |
| int | flags = normal |
||
| ) |
Assigns regular expression using a patter and special flags. Note, at this point flags should be normal or perl only (which are equivalent). May be extended in future.
Throws regex_error in case of invalid expression.
| bool booster::regex::empty | ( | ) | const |
Returns true if the expression wasn't assigned.
| int booster::regex::flags | ( | ) | const |
Get expression flags. Now always 0.
| unsigned booster::regex::mark_count | ( | ) | const |
Get number of captured subexpressions.
| bool booster::regex::match | ( | char const * | begin, |
| char const * | end, | ||
| int | flags = 0 |
||
| ) | const |
Match the expression in the text in range [begin,end) exactly. Parameter flags currently unused.
Return true if matches
| bool booster::regex::match | ( | char const * | begin, |
| char const * | end, | ||
| std::vector< std::pair< int, int > > & | marks, | ||
| int | flags = 0 |
||
| ) | const |
Match the expression in the text in range [begin,end) exactly. Parameter flags currently unused.
Return true if matches, and stores captured sub-patterns in marks. Each pair represents a text in rage [begin+first,begin+second).
If no such patter was captured, returns (-1,-1) as pair.
Copy regular expression. Note. This is much more efficient then creating a new expression with same patter.
| bool booster::regex::search | ( | char const * | begin, |
| char const * | end, | ||
| int | flags = 0 |
||
| ) | const |
Search the expression in the text in range [begin,end). Parameter flags currently unused.
Return true if found.
| bool booster::regex::search | ( | char const * | begin, |
| char const * | end, | ||
| std::vector< std::pair< int, int > > & | marks, | ||
| int | flags = 0 |
||
| ) | const |
Search the expression in the text in range [begin,end). Parameter flags currently unused.
Return true if found, and stores captured sub-patterns in marks. Each pair represents a text in rage [begin+first,begin+second).
If no such patter was captured, returns (-1,-1) as pair.
| std::string booster::regex::str | ( | ) | const |
Get the string that the regular expression was created with.
|
static |
Make case insensitive comparison New in CppCMS 1.2.
|
static |
Assume that input is UTF-8 so for example '.' would match UTF-8 code point New in CppCMS 1.2.
1.8.11