Wrapper around POSIX extended regular expressions. More...
Public Member Functions | |
| regExp () | |
| Construct null. More... | |
| regExp (const char *, const bool ignoreCase=false) | |
| Construct from character array, optionally ignoring case. More... | |
| regExp (const std::string &, const bool ignoreCase=false) | |
| Construct from std::string (or string), optionally ignoring case. More... | |
| ~regExp () | |
| Destructor. More... | |
| bool | empty () const |
| Return true if a precompiled expression does not exist. More... | |
| bool | exists () const |
| Does a precompiled expression exist? More... | |
| int | ngroups () const |
| Return the number of (groups) More... | |
| void | set (const char *, const bool ignoreCase=false) const |
| Compile pattern into a regular expression,. More... | |
| void | set (const std::string &, const bool ignoreCase=false) const |
| Compile pattern into a regular expression,. More... | |
| bool | clear () const |
| Release precompiled expression. More... | |
| std::string::size_type | find (const std::string &str) const |
| Find position within string. More... | |
| bool | match (const std::string &) const |
| Return true if it matches the entire string. More... | |
| bool | match (const std::string &, List< std::string > &groups) const |
| Return true if it matches and sets the sub-groups matched. More... | |
| bool | match (const std::string &, List< string > &groups) const |
| Return true if it matches and sets the sub-groups matched. More... | |
| bool | search (const std::string &str) const |
| Return true if the regex was found within string. More... | |
| void | operator= (const char *) |
| Assign and compile pattern from a character array. More... | |
| void | operator= (const std::string &) |
| Assign and compile pattern from string. More... | |
Static Public Member Functions | |
| static bool | meta (char c) |
| Is character a regular expression meta-character? More... | |
Wrapper around POSIX extended regular expressions.
The PCRE '(?i)' extension is provided to compile the regular expression as being case-insensitive.
| regExp | ( | const char * | pattern, |
| const bool | ignoreCase = false |
||
| ) |
| regExp | ( | const std::string & | pattern, |
| const bool | ignoreCase = false |
||
| ) |
| ~regExp | ( | ) |
Destructor.
Definition at line 108 of file regExp.C.
References regExp::clear().

|
inlinestatic |
Is character a regular expression meta-character?
any character: '.'
quantifiers: '*', '+', '?'
grouping: '(', '|', ')'
range: '[', ']'
Don't bother checking for '{digit}' bounds
Definition at line 98 of file regExp.H.
Referenced by wordRe::meta().

|
inline |
|
inline |
Does a precompiled expression exist?
Definition at line 137 of file regExp.H.
Referenced by wordRe::compile(), wordRe::isPattern(), wordRe::match(), and wordRe::recompile().

|
inline |
Return the number of (groups)
Definition at line 143 of file regExp.H.
References regExp::clear(), regExp::find(), and regExp::match().

| void set | ( | const char * | pattern, |
| const bool | ignoreCase = false |
||
| ) | const |
Compile pattern into a regular expression,.
optionally ignoring case
Definition at line 116 of file regExp.C.
References regExp::clear(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, and Foam::nl.
Referenced by wordRe::compile().


| void set | ( | const std::string & | pattern, |
| const bool | ignoreCase = false |
||
| ) | const |
| bool clear | ( | ) | const |
Release precompiled expression.
Returns true if precompiled expression existed before clear
Definition at line 169 of file regExp.C.
Referenced by wordRe::clear(), wordRe::compile(), regExp::ngroups(), wordRe::operator=(), regExp::set(), wordRe::uncompile(), and regExp::~regExp().

| std::string::size_type find | ( | const std::string & | str | ) | const |
Find position within string.
Returns the index where it begins or string::npos if not found
Definition at line 184 of file regExp.C.
Referenced by regExp::ngroups(), and regExp::search().

| bool match | ( | const std::string & | str | ) | const |
Return true if it matches the entire string.
The begin-of-line (^) and end-of-line ($) anchors are implicit
Definition at line 201 of file regExp.C.
Referenced by keyType::match(), regExp::match(), wordRe::match(), regExp::ngroups(), and STARCDsurfaceFormatCore::readInpCellTable().

| bool match | ( | const std::string & | str, |
| List< std::string > & | groups | ||
| ) | const |
Return true if it matches and sets the sub-groups matched.
The begin-of-line (^) and end-of-line ($) anchors are implicit
Definition at line 225 of file regExp.C.
References regExp::match().

|
inline |
Return true if the regex was found within string.
Definition at line 183 of file regExp.H.
References regExp::find().

| void operator= | ( | const char * | pat | ) |
| void operator= | ( | const std::string & | pat | ) |
1.8.13