# kdecore Library API Documentation

Overview | Class Hierarchy | Classes | Classes (annotated) | Members | Namespaces | Source Files

# KRegExp Class Reference

`#include <kregexp.h>`

Collaboration diagram for KRegExp:

[legend]
List of all members.

## Public Member Functions

| KRegExp ()
| KRegExp (const char *_pattern, const char *_mode="")
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

Deprecated:
  Please use QRegExp instead.

Regular expression (regexp) matching with back-references.

This was implemented because QRegExp did not support back-references. It now does and is recommended over KRegExp because of the unicode support and the more powerful API.

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.

Author:
  Torben Weis <weis@kde.org>

Definition at line 60 of file kregexp.h.

## Constructor & Destructor Documentation

KRegExp::KRegExp | ( |  | ) |

| Creates a KRegExp object without a default pattern. Definition at line 143 of file kregexp.cpp.

KRegExp::KRegExp | ( | const char * | _pattern,
|  | const char * | _mode = `""`
| ) |

Creates a KRegExp object.

Parameters:

  | _pattern | The regular expression to use for matches.
  | _mode | If this is "i", case-insensitive matches will be performed.

Definition at line 148 of file kregexp.cpp.

## Member Function Documentation

bool KRegExp::compile | ( | const char * | _pattern,
|  | const char * | _mode = `""`
| ) |

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.

Definition at line 158 of file kregexp.cpp.

References KRegExpPrivate::compile().

bool KRegExp::match | ( | const char * | _string | ) |

Match a string to the last supplied regexp.

Parameters:

  | _string | the string to match

Returns:
  `true` on match, false otherwise.

Definition at line 163 of file kregexp.cpp.

References KRegExpPrivate::match().

const char * KRegExp::group | ( | int | _grp | ) |

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.

Definition at line 168 of file kregexp.cpp.

References KRegExpPrivate::group().

int KRegExp::groupStart | ( | int | _grp | ) |

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.

Definition at line 173 of file kregexp.cpp.

References KRegExpPrivate::groupStart().

int KRegExp::groupEnd | ( | int | _grp | ) |

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.

Definition at line 178 of file kregexp.cpp.

References KRegExpPrivate::groupEnd().

The documentation for this class was generated from the following files:

- kregexp.h
- kregexp.cpp

This file is part of the documentation for kdecore Library Version 3.4.1.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Sat Jun 11 20:18:58 2005 by doxygen 1.4.1 written by Dimitri van Heesch, © 1997-2003