class KRegExp

# class KRegExp | Regular expression (regexp) matching with back-references. More...
Definition | `#include <kregexp.h>`
List of all Methods
Annotated List
Files
Globals
Hierarchy
Index

#### Public Methods

- KRegExp ()
- KRegExp ( const char *_pattern, const char *_mode = "" )
- ~KRegExp ()
- bool compile ( const char *_pattern, const char *_mode = "" )
- bool match ( const char *_string )
- const char * group ( int _grp )
- int groupStart ( int _grp )
- int groupEnd ( int _grp )

## Detailed Description

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.

- Version: $Id: kregexp.h,v 1.11 2002/09/14 16:49:02 tjansen Exp $
- Author: Torben Weis
- Generated: root on macppc.ports.openbsd.org on Sat Sep 6 10:36:15 2003, using kdoc 2.0a54.