regex(5) regex(5)
NAME
regex - Typen für den Vergleich regulärer Ausdrücke
SYNTAX
#include <regex.h>
BESCHREIBUNG
Die Include-Datei regex.h definiert die Strukturen und symbolischen
Konstanten, die von den Funktionen regcomp(), regexec(), regerror()
und regfree() verwendet werden.
Der Strukturtyp regext enthält mindestens die folgende Komponente:
______________________________________________________________________
| Typ | Name | Beschreibung |
|___________|_____________|___________________________________________|
| sizet | rensub | Anzahl der geklammerten Teilausdrücke |
|___________|_____________|___________________________________________|
Der Typ regofft ist als arithmetischer Typ mit Vorzeichen definiert,
der den größten Wert aufnehmen kann, der im Typ offt bzw. ssizet
abgelegt werden kann. Der Strukturtyp regmatcht enthält mindestens
die folgenden Komponenten:
______________________________________________________________________
| Typ | Name | Beschreibung |
|____________|____________|___________________________________________|
| regofft | rmso | Byte-Offset vom Anfang von string bis |
| | | zum Anfang der Teil-Zeichenkette |
|____________|____________|___________________________________________|
| regofft | rmeo | Byte-Offset vom Anfang von string bis |
| | | zum ersten Zeichen nach dem Ende der |
| | | Teil-Zeichenkette |
|____________|____________|___________________________________________|
Werte für die cflags-Parameter der Funktion regcomp():
REGEXTENDED Verwendung der weiterter regulärer Ausdrücke.
REGICASE Groß-und Kleinschreibung beim Vergleich ignorie-
ren.
REGNOSUB Nur Erfolg oder Mißerfolg der Funktion regexec()
melden.
REGNEWLINE Bearbeitung der Neue-Zeile-Zeichen ändern.
REGLITNL Die Zeichenkette nn wird als Neue-Zeile-Zeichen
behandelt.
REGVIMODE << bzw. >> werden als Anfang bzw. Ende eines Wor-
tes interpretiert.
Seite 1 Reliant UNIX 5.44 Gedruckt 11/98
regex(5) regex(5)
REGNSUBANCHOR Die Zeichen ^ und $ wirken innerhalb von Unteraus-
drücken nicht als Anker.
REGEMPTY regcomp() liefert einen Fehlerwert, wenn pattern
Null oder leer ist.
Werte für die eflags-Parameter der Funktion regexec():
REGNOTBOL Das Zirkumflex-Zeichen (^) als Sonderzeichen ent-
spricht nicht dem Anfang von string.
REGNOTEOL Das Dollar-Zeichen ($) als Sonderzeichen ent-
spricht nicht dem Ende von string.
Die folgenden Konstanten sind als Rückgabewerte für Fehler definiert:
REGNOMATCH regexec() fehlgeschlagen.
REGINVARG Ein ungültiger Parameter wurde angegeben.
REGBADPAT Ungültiger regulärer Ausdruck.
REGECOLLATE Bezug auf ungültige Zeicheneinheit.
REGECTYPE Bezug auf ungültigen Zeichenklassentyp.
REGEESCAPE Nachfolgendes Zeichen \ im Muster.
REGESUBREG Zahl in \digit ungültig oder Fehler.
REGEBRACK [ oder ] fehlt.
REGEPAREN \( oder \) fehlt bzw. ( oder ) fehlt.
REGEBRACE \{ oder \} fehlt.
REGBADBR Inhalt von \{ \} ungültig: keine Zahl, Zahl zu
groß, mehr als zwei Zahlen, erste Zahl größer als
zweite Zahl.
REGERANGE Ungültiger Endpunkt in Bereichsausdruck.
REGESPACE Kein Speicherplatz.
REGBADRPT Kein gültiger regulärer Ausdruck vor ?, * bzw. +.
REGEPATTERN Als Parameter wurde ein Null- bzw. Leermuster
angegeben und regcomp() wurde mit dem Flag
REGEMPTY aufgerufen.
REGENOSYS Die Implementation unterstützt die Funktion nicht.
Seite 2 Reliant UNIX 5.44 Gedruckt 11/98
regex(5) regex(5)
Die folgenden Anweisungen sind als Funktionen vereinbart. Sie können
auch als Makros vereinbart werden:
int regcomp(regext *preg, const char *pattern, int cflags);
int regexec(const regext *preg, const char *string,
sizet nmatch, regmatcht pmatch[], int cflags);
sizet regerror(int errcode, const regext *preg,
char *errbuf, sizet errbufsize);
void regfree(regext *preg);
Die Implementation kann weitere Makros oder Konstanten definieren.
Deren Namen müssen mit REG beginnen.
SIEHE AUCH
regcmp(1), regex(3), regcomp(3C), regcmp(3G), regexpr(3G),
expressions(5), regexp(5).
Seite 3 Reliant UNIX 5.44 Gedruckt 11/98