|
|
Regular expression (regexp) matching with back-references.
This was implemented because QRegExp does not support back-references.
Back-references are parts of a regexp grouped with parentheses. If a string matches the regexp, you can access the text that matched each group with the group method. This is similar to regular expressions in Perl.
Example:
KRegExp ex( "([A-Za-z]+) (.+)" ); ex.match( "42 Torben Weis" ); kdDebug() << ex.group(0) << endl; kdDebug() << ex.group(1) << endl; kdDebug() << ex.group(2) << endl; |
Output:
Torben Weis Torben Weis |
Please notice that KRegExp does not support unicode.
KRegExp ()
| KRegExp |
Creates a KRegExp object without a default pattern.
KRegExp ( const char *_pattern, const char *_mode = "" )
| KRegExp |
Creates a KRegExp object.
Parameters:
_pattern | The regular expression to use for matches. |
_mode | If this is "i", case-insensitive matches will be performed. |
~KRegExp ()
| ~KRegExp |
bool compile ( const char *_pattern, const char *_mode = "" )
| compile |
Prepare a regular expression for subsequent matches.
Parameters:
_pattern | The regular expression to use for matches. |
_mode | If this is "i", case-insensitive matches will be performed. |
Returns: bool if successful.
bool match ( const char *_string )
| match |
Match a string to the last supplied regexp.
Parameters:
_string | the string to match |
Returns: true
on match, false otherwise.
const char * group ( int _grp )
| group |
Returns a group from the match.
Parameters:
_grp | May be in the range [0..9]. If _grp is 0 then the complete
matched string is returned.
|
Returns: a grouped substring. A substring may be empty. In this case 0 is returned. Otherwise you may not delete or modify the returned value. In addition the returned value becomes invalid after the KRegExp instance is deleted or after match() was called again.
int groupStart ( int _grp )
| groupStart |
The offset of the given group in the string.
Parameters:
_grp | May be in the range [0..9]. If _grp is 0 then the start offset
of the complete matched string is returned.
|
Returns: The start offset of the grouped substring.
int groupEnd ( int _grp )
| groupEnd |
The offset of the given group's end in the string.
Parameters:
_grp | May be in the range [0..9]. If _grp is 0 then the end offset
of the complete matched string is returned.
|
Returns: The end offset of the grouped substring. The "end offset" is the first character after the string.