BALL::RegularExpression Class Reference
[Miscellaneous]

Regular expression class. More...

#include <regularExpression.h>

List of all members.


Public Member Functions

Constructors and Destructors
RegularExpression ()
Default constructor.
RegularExpression (const RegularExpression &regular_expression)
Copy constructor.
RegularExpression (const String &pattern, bool wildcard_pattern=false)
virtual ~RegularExpression ()
Destructor.
virtual void clear ()
Reset the object attributes to their default values.
void destroy ()
Destroy the instance.
Assignment
RegularExpression & operator= (const RegularExpression &expression)
Assignment operator.
void set (const RegularExpression &regular_expression)
Assign from another instance.
void set (const String &pattern, bool wildcard_pattern=false)
Assign from a string.
void get (RegularExpression &regular_expression) const
Assign to another instance.
Predicates
bool isEmpty () const
Test if expression is empty.
bool operator== (const RegularExpression &regular_expression) const
Equality operator.
bool operator!= (const RegularExpression &regular_expression) const
Inequality operator.
bool operator< (const RegularExpression &regular_expression) const
Less operator.
bool operator<= (const RegularExpression &regular_expression) const
Less or equal operator.
bool operator>= (const RegularExpression &regular_expression) const
Greater or equal operator.
bool operator> (const RegularExpression &regular_expression) const
Greater operator.
Debugging and Diagnostics
virtual bool isValid () const
Test if instance is valid.
virtual void dump (std::ostream &s=std::cout, Size depth=0) const
Dump this instance to an ostream depth is normaly just used for internal use.

Static Public Attributes

String constants
static const String ALPHA
alphabetic letters.
static const String ALPHANUMERIC
alphanumeric letters
static const String REAL
real numbers
static const String IDENTIFIER
identifier characters
static const String INTEGER
integer characters
static const String HEXADECIMAL_INTEGER
hexadecimal and integer characters
static const String LOWERCASE
lowercase letters
static const String NON_ALPHA
non alphabetic characters
static const String NON_ALPHANUMERIC
non alphanumeric characters
static const String NON_NUMERIC
non numeric characters
static const String NON_WHITESPACE
non whitespace charcters
static const String UPPERCASE
uppercase letters.
static const String WHITESPACE
whitespace characters.

Friends

Storers
BALL_EXPORT friend std::ostream & operator<< (std::ostream &s, const RegularExpression &regular_expression)
output operator
BALL_EXPORT friend std::istream & operator>> (std::istream &s, RegularExpression &regular_expression)
input operator

Accessors

const String & getPattern () const
Get the expression pattern.
Size countSubexpressions () const
Count subexpressions.
bool match (const String &text, Index from=0, int execute_flags=0) const throw (Exception::NullPointer, Exception::IndexUnderflow, Exception::IndexOverflow)
Match a text with this regular expression.
bool match (const Substring &text, Index from=0, int execute_flags=0) const throw (Substring::InvalidSubstring, Exception::IndexUnderflow, Exception::IndexOverflow)
Match a substring with this regular expression.
bool match (const char *text, int execute_flags=0) const throw (Exception::NullPointer)
Match a C-String with this regular expression.
bool find (const String &text, Substring &found, Index from=0, int execute_flags=0) const throw (Exception::IndexUnderflow, Exception::IndexOverflow)
Find this expression in a string.
bool find (const String &text, vector< Substring > &subexpressions, Index from=0, int execute_flags=0) const throw (Exception::IndexUnderflow, Exception::IndexOverflow)
Find this expression in a string.
static bool match (const char *text, const char *pattern, int compile_flags=0|REG_EXTENDED|REG_NOSUB, int execute_flags=0) throw (Exception::NullPointer)
Match a text with a given pattern.

Detailed Description

Regular expression class.

Member Function Documentation

virtual void BALL::RegularExpression::dump ( std::ostream & s = std::cout,
Size depth = 0
) const [virtual]

Dump this instance to an ostream depth is normaly just used for internal use.

Parameters:
s the ostream, default is the standard output
depth the indentation depth of the output

bool BALL::RegularExpression::find ( const String & text,
vector< Substring > & subexpressions,
Index from = 0,
int execute_flags = 0
) const throw (Exception::IndexUnderflow, Exception::IndexOverflow)

Find this expression in a string.

Parameters:
text to process
subexpressions the results are stored here
from index in the string to start the matching
execute_flags ?????

bool BALL::RegularExpression::find ( const String & text,
Substring & found,
Index from = 0,
int execute_flags = 0
) const throw (Exception::IndexUnderflow, Exception::IndexOverflow)

Find this expression in a string.

Parameters:
from index in the string to start the matching
found the result is stored as a substring here
execute_flags ?????

bool BALL::RegularExpression::match ( const char * text,
int execute_flags = 0
) const throw (Exception::NullPointer)

Match a C-String with this regular expression.

Parameters:
text to process
execute_flags ?????

bool BALL::RegularExpression::match ( const Substring & text,
Index from = 0,
int execute_flags = 0
) const throw (Substring::InvalidSubstring, Exception::IndexUnderflow, Exception::IndexOverflow)

Match a substring with this regular expression.

Parameters:
text to process
from index in the substring to start the matching
execute_flags ?????

bool BALL::RegularExpression::match ( const String & text,
Index from = 0,
int execute_flags = 0
) const throw (Exception::NullPointer, Exception::IndexUnderflow, Exception::IndexOverflow)

Match a text with this regular expression.

Parameters:
text to process
from index in the string to start the matching
execute_flags ?????

static bool BALL::RegularExpression::match ( const char * text,
const char * pattern,
int compile_flags = 0|REG_EXTENDED|REG_NOSUB,
int execute_flags = 0
) throw (Exception::NullPointer) [static]

Match a text with a given pattern.

Parameters:
text to process
pattern to compare with
compile_flags ?????
execute_flags ?????
Exceptions:
NullPointer if text or pattern are NULL

Generated on Thu Aug 6 18:30:28 2009 for BALL by doxygen 1.5.8