Zeichen |
Beschreibung |
\ |
Markiert das nächste Zeichen entweder als Sonderzeichen, als
Literal, als Rückverweis oder als oktalen Escapewert.
Beispielsweise entspricht 'n' dem Zeichen "n". '\n' entspricht
einem Zeilenumbruchzeichen. Die Sequenz '\\' entspricht "\", und
'\(' entspricht "(". |
^ |
Entspricht der Position am Anfang der Eingabezeichenfolge. |
$ |
Entspricht der Position am Ende der Eingabezeichenfolge. |
* |
Entspricht dem vorhergehenden Unterausdruck keinmal, einmal
oder mehrere Male. Beispielsweise entspricht 'Zo*' sowohl "Z" als
auch "Zoo". * ist äquivalent zu '{0,}'. |
+ |
Entspricht dem vorhergehenden Unterausdruck einmal oder
mehrere Male. Beispielsweise entspricht 'Zo+' sowohl "Zo" als auch
"Zoo", aber nicht "Z". + ist äquivalent zu '{1,}'. |
? |
Entspricht dem vorhergehenden Unterausdruck keinmal oder
einmal. Beispielsweise entspricht 'habe(n)?' dem "habe" in "habe"
oder "haben". ? ist äquivalent zu '{0,1}'. |
{n} |
n ist eine nicht negative Ganzzahl. Entspricht exakt
n Mal. Beispielsweise entspricht 'o{2}' nicht dem "o" in
"Robert", jedoch den beiden "o" in "Boot". |
{n,} |
n ist eine nicht negative Ganzzahl. Entspricht
mindestens n Mal. Beispielsweise entspricht 'o{2,}' nicht
dem "o" in "Robert", aber allen "o" in "Boooot". 'o{1,}' ist
äquivalent zu 'o+'. 'o{0,}' ist äquivalent zu 'o*'. |
{n,m} |
m und n sind nicht negative Ganzzahlen, wobei
n <= m. Entspricht mindestens n und höchstens
m Mal. Beispielsweise entspricht 'o{1,3}' den ersten drei "o"
in "Booooot". 'o{0,1}' ist äquivalent zu 'o?'. Beachten Sie, dass
zwischen dem Komma und den Zahlen kein Leerzeichen stehen darf. |
? |
Wenn dieses Zeichen unmittelbar auf einen der anderen
Quantifizierer folgt (*, +, ?, {n}, {n,}, {n,m}),
so ist die Musterentsprechung nicht umfassend, also von
kürzestmöglicher Übereinstimmung. Ein nicht umfassendes Muster
entspricht möglichst wenig der durchsuchten Zeichenfolge, während
das umfassende Standardmuster möglichst viel der durchsuchten
Zeichenfolge entspricht. In der Zeichenfolge "oooo" entspricht
beispielsweise 'o+?' einem einzigen "o", während 'o+' allen "o"
entspricht. |
. |
Entspricht allen einzelnen Zeichen außer "\n". Um nach einer
Entsprechung für alle einzelnen Zeichen einschließlich des "\n" zu
suchen, verwenden Sie beispielsweise das Muster '[.\n]'. |
(?:Muster) |
Entspricht Muster, speichert die Entsprechung jedoch
nicht, d. h., es handelt sich um eine nicht speichernde
Entsprechung, die nicht für eine mögliche spätere Verwendung
gespeichert wird. Dies ist von Nutzen, wenn Teile eines Musters
mit dem "oder"-Zeichen (|) kombiniert werden sollen. So ist
beispielsweise 'telefonier(?:t|en)' ein kürzerer Ausdruck als 'telefoniert|telefonieren'. |
(?=Muster) |
Die positive Vorausschau entspricht der Suchzeichenfolge an
allen Stellen, an denen eine Muster entsprechende
Zeichenfolge beginnt. Dabei handelt es sich um eine nicht
speichernde Entsprechung, d. h., die Entsprechung wird nicht für
eine mögliche spätere Verwendung gespeichert. Beispielsweise
entspricht 'Windows (?=95|98|NT|2000)' dem Wort "Windows" in
"Windows 2000", jedoch nicht dem Wort "Windows" in "Windows 3.1".
Vorausschauen verbrauchen keine Zeichen, d. h., nachdem eine
Entsprechung gefunden wurde, beginnt die Suche nach der nächsten
Entsprechung unmittelbar nach der letzten Entsprechung und nicht
nach den Zeichen, aus denen die Vorausschau bestand. |
(?!Muster) |
Die komplementäre Vorausschau entspricht der Suchzeichenfolge
an allen Stellen, an denen eine Muster nicht entsprechende
Zeichenfolge beginnt. Dabei handelt es sich um eine nicht
speichernde Entsprechung, d. h., die Entsprechung wird nicht für
eine mögliche spätere Verwendung gespeichert. Beispielsweise
entspricht 'Windows (?!95|98|NT|2000)' dem Wort "Windows" in
"Windows 3.1", jedoch nicht dem Wort "Windows" in "Windows 2000".
Vorausschauen verbrauchen keine Zeichen, d. h., nachdem eine
Entsprechung gefunden wurde, beginnt die Suche nach der nächsten
Entsprechung unmittelbar nach der letzten Entsprechung und nicht
nach den Zeichen, aus denen die Vorausschau bestand. |
x|y |
Entspricht entweder x oder y. Beispielsweise
entspricht 'sch|blau' entweder "sch" oder "blau". '(sch|b)lau'
entspricht "schlau" oder "blau". |
[xyz] |
Eine Menge von Zeichen. Entspricht allen enthaltenen Zeichen.
Beispielsweise entspricht '[abc]' dem "a" in "fallen". |
[^xyz] |
Eine Komplementmenge von Zeichen. Entspricht allen nicht
enthaltenen Zeichen. Beispielsweise entspricht '[^abc]' dem "f" in
"fallen".
|
[a-z] |
Ein Zeichenbereich. Entspricht allen Zeichen im angegebenen
Bereich. Beispielsweise entspricht '[a-z]' allen Kleinbuchstaben
im Bereich von "a" bis "z". |
[^a-z] |
Ein Komplementbereich von Zeichen. Entspricht allen Zeichen,
die im angegebenen Bereich nicht enthalten sind. Beispielsweise
entspricht '[^a-z]' allen Zeichen, die nicht im Bereich von "a"
bis "z" enthalten sind. |
\b |
Entspricht einer Wortgrenze, d. h. der Position zwischen einem
Wort und einem Leerzeichen. Beispielsweise entspricht 'er\b' dem
"er" in "neuer", jedoch nicht dem "er" in "Verb". |
\B |
Entspricht einer Nichtwortgrenze. 'er\B' entspricht dem "er"
in "Verb", jedoch nicht dem "er" in "neuer". |
\cx |
Entspricht dem Steuerzeichen, das durch x angegeben
wird. Beispielsweise entspricht '\cM' einem STRG-M oder
Wagenrücklaufzeichen. Der Wert von x muss im Bereich von
A-Z oder a-z liegen. Ist dies nicht der Fall, wird c als "c"-Zeichenliteral
interpretiert. |
\d |
Entspricht einer Ziffer. Äquivalent zu '[0-9]'. |
\D |
Entspricht einer Nichtziffer. Äquivalent zu '[^0-9]'. |
\f |
Entspricht einem Seitenvorschubzeichen. Äquivalent zu '\x0c'
und '\cL'. |
\n |
Entspricht einem Zeilenumbruchzeichen. Äquivalent zu '\x0a'
und '\cJ'. |
\r |
Entspricht einem Wagenrücklaufzeichen. Äquivalent zu '\x0d'
und '\cM'. |
\s |
Entspricht beliebigen Leerräumen wie Leerzeichen, Tabstopp,
Seitenvorschub usw. Äquivalent zu '[ \f\n\r\t\v]'. |
\S |
Entspricht beliebigen Nichtleerräumen. Äquivalent zu
'[^ \f\n\r\t\v]'. |
\t |
Entspricht einem Tabstoppzeichen. Äquivalent zu '\x09' und
'\cI'. |
\v |
Entspricht einem vertikalen Tabstoppzeichen. Äquivalent zu
'\x0b' und '\cK'. |
\w |
Entspricht allen Wortzeichen einschließlich Unterstrich.
Äquivalent zu '[A-Za-z0-9_]'. |
\W |
Entspricht allen Nichtwortzeichen. Äquivalent zu
'[^A-Za-z0-9_]'. |
\xn |
Entspricht n, wobei n ein hexadezimaler
Escapewert ist. Hexadezimale Escapewerte müssen genau zwei Stellen
aufweisen. '\x41' entspricht beispielsweise "A". '\x041' ist
äquivalent zu "\x04" & "1". Ermöglicht die Verwendung von
ASCII-Codes in regulären Ausdrücken. |
\num |
Entspricht num, wobei num eine positive Ganzzahl
ist. Ein Rückverweis auf gespeicherte Entsprechungen.
Beispielsweise entspricht '(.)\1' zwei aufeinander folgenden
identischen Zeichen. |
\n |
Bezeichnet entweder einen oktalen Escapewert oder einen
Rückverweis. Wenn \n mindestens n gespeicherte
Unterausdrücke vorausgehen, handelt es sich bei n um einen
Rückverweis. Anderenfalls ist n ein oktaler Escapewert,
wenn n eine Oktalziffer (0-7) ist. |
\nm |
Bezeichnet entweder einen oktalen Escapewert oder einen
Rückverweis. Wenn \nm mindestens nm gespeicherte
Unterausdrücke vorausgehen, handelt es sich bei nm um einen
Rückverweis. Wenn \nm mindestens n gespeicherte
Ausdrücke vorausgehen, ist n ein Rückverweis, dem das
Literal m folgt. Wenn keine der vorhergehenden Bedingungen
zutrifft, entspricht \nm dem oktalen Escapewert nm,
wenn n und m Oktalziffern (0-7) sind. |
\nml |
Entspricht dem oktalen Escapewert nml, wenn n
eine Oktalziffer (0-3) ist und m und l Oktalziffern
(0-7) sind. |
\un |
Entspricht n, wobei n ein Unicodezeichen ist,
das mit vier Hexadezimalziffern ausgedrückt wird. Beispielsweise
entspricht '\u00A9' dem Copyrightsymbol (©). |