Reguläre Ausdrücke

Spezialzeichen und ihr Verhalten

Zeichen Funktion
\ Kennzeichnet einen speziellen Platzhalter, entwertet einen normalen Platzhalter, dient als normales Zeichen, dient als Verweis auf ein gespeichertes Suchergebnis oder legt einen Oktalwert fest.
^ Platzhalter für den Anfang einer Zeichenkette
$ Platzhalter für das Ende einer Zeichenkette
* Vorheriger Begriff darf 0x oder mehrfach vorkommen. Entspricht {0,}

ab*
a ab abb ...

+ Vorheriger Begriff darf 1x oder mehrfach vorkommen. Entspricht {1,}

ab+

ab abb ...

? Vorheriger Begriff darf 0x oder 1x vorkommen. Entspricht {0,1}

ab?

a ab

{n} n ist eine positive Zahl. Anzahl der Vorkommen des vorherigen Begriffs

ab{2}

abb

{n,} n ist eine positive Zahl. Mindestanzahl der Vorkommen des vorherigen Begriffs

ab{2,}

abb abbb ...

{n,m} m und n sind positive Zahlen, wobei n <= m sein muss. Mindestanzahl und Maximalanzahl der Vorkommen des vorherigen Begriffs

ab{1,3}

ab abb abbb

? Wenn dieses Zeichen direkt einem anderen Sonderzeichen (* + ? {n} {n,} {n,m}) folgt, ist das Ergebnis so klein wie möglich (normalerweise umfassen die Suchergebnisse soviel wie möglich)
. Platzhalter für ein beliebiges Zeichen außer \n
(pattern) Vergleicht auf pattern und speichert das Ergebnis zur späteren Verwendung (siehe \0...\9)
(?:pattern) Vergleicht auf pattern ohne das Ergebnis zu speichern
(?=pattern) Vorwärtsschauendes vergleichen. Vergleich trifft zu, wenn pattern zutrifft. Das Ergebnis wird nicht zur späteren Verwendung gespeichert. Die weitere Abarbeitung beginnt vor pattern

Windows (?=95|98|NT|2000)
findet Windows in Windows 2000 aber nicht in Windows XP

(?!pattern) Negatives vorwärtsschauendes vergleichen. Vergleich trifft zu, wenn pattern nicht zutrifft. Das Ergebnis wird nicht zur späteren Verwendung gespeichert. Die weitere Abarbeitung beginnt vor pattern

Windows (?!95|98|NT|2000)
findet Windows in Windows XP aber nicht in Windows 2000

x|y Vergleicht auf  x oder y

a|ab
a ab

[xyz] Zeichenalternativen. Jedes der Zeichen darf vorkommen

a[abc]bc
aabc abbc acbc

[^xyz] Ausgeschlossese Zeichenalternativen. Keines der Zeichen darf vorkommen

a[^bc]bc
aabc adbc ...

[a-z] Zeichenbereich. Jedes Zeichen im angegebenen Bereich darf vorkommen

a[a-c]bc
aabc abbc acbc

[^a-z] Ausgeschlossener Zeichenbereich. Alle Zeichen im angegebenen dürfen nicht vorkommen

a[^a-c]bc
adbc aebc ...

\b Spezieller Platzhalter für "Wortende"
\B Spezieller Platzhalter für "Nicht-Wortende"
\cx Spezieller Platzhalter, um das anschließende Zeichen als Kontrollzeichen festzulegen. x muss ein Buchstabe sein. Zum Beispiel "Carriage Control" mit \cM
\d Spezieller Platzhalter für eine Ziffer. Entspricht [0-9]
\D Spezieller Platzhalter für ein Zeichen, das keine Ziffer ist. Entspricht [^0-9]
\f Spezieller Platzhalter für Formfeed". Entspricht \x0c oder \cL
\n Spezieller Platzhalter für "Newline". Entspricht \x0a oder \cJ
\r Spezieller Platzhalter für "Carriagereturn". Entspricht \x0d oder \cM
\s Spezieller Platzhalter für "Whitespace"-Zeichen (Leerzeichen, Tabulator, usw.). Entspricht [ \f\n\r\t\v]
\S Spezieller Platzhalter für kein "Whitespace"-Zeichen (Leerzeichen, Tabulator, usw.). Entspricht [^ \f\n\r\t\v]
\t Spezieller Platzhalter für Tabulator. Entspricht \x09 oder \cI
\v Spezieller Platzhalter für Vertikaltabulator. Entspricht \x0b oder \cK
\w Spezieller Platzhalter für ein alphanumerisches Zeichen inklusive Unterstrich. Entspricht [A-Za-z0-9_]
\W Spezieller Platzhalter für kein alphanumerisches Zeichen inklusive Unterstrich. Entspricht[^A-Za-z0-9_]
\xn Spezieller Platzhalter, um das anschließende Zeichen über seinen Hexadezimalwert angeben zu können. Der Wert muss genau zwei Zeichen umfassen. Zum Beispiel das Zeichen "A" mit \x41
\n Platzhalter für Oktalwert von 0-7
\nm Platzhalter für Oktalwert. n und m müssen 0-7 sein
\nml Platzhalter für Oktalwert. n muss 0-3 sein, m 0-7 und l ebenfalls 0-7
\un Platzhalter für Unicode-Zeichen als Hexadezimalwert. Es müssen 4 Hexadezimalwerte angegeben werden. Zum Beispiel ist \u00A9 das Copyrightsymbol (©)
$num Platzhalter für gespeichertes Suchergebnis

 

Rangfolge der Auswertung

Stufe Operator Beschreibung
1 \ Spezialzeichen
2 (), (?:), (?=), [] Klammern
3 *, +, ?, {n}, {n,}, {n,m} diverse Platzhalter und Anzahlangaben
4 ^, $, \platzhalter diverse Platzhalter
5 | Alternativen
Zum Beispiel findet a|bcd a oder bcd. Sollen sowohl acd als auch bcd gefunden werden, kann dies durch Klammerung erreicht werden. Die Angabe muss dann (a|b)cd lauten.