Um einen regulären Ausdruck zu erstellen, müssen Sie eine bestimmte Syntax, d. h. Sonderzeichen und Konstruktionsregeln verwenden. Der folgende einfache reguläre Ausdruck entspricht z. B. jeder 10-stelligen Telefonnummer mit dem Muster "nnn-nnn-nnnn":
\d{3}-\d{3}-\d{4}
Die folgende Tabelle enthält einige der häufigsten Sonderzeichen, die für reguläre Ausdrücke verwendet werden. Diese Zeichen werden wie folgt kategorisiert:
Zeichen | Beschreibung |
---|---|
Anker | |
^ | (Caret-Zeichen) Entspricht dem Anfang der Zeile oder Zeichenkette, die der reguläre Ausdruck sucht. Eine Inhaltsregel mit "Betreffzeile" als Position und dem regulären Ausdruck ^abc Entspricht allen E-Mails, deren Betreff mit den Buchstaben abc beginnt |
$ | (Dollar-Zeichen) Entspricht dem Ende der Zeile oder Zeichenkette, die der reguläre Ausdruck sucht. Eine Inhaltsregel mit "Betreffzeile" als Position und dem regulären Ausdruck xyz$ Entspricht allen E-Mails, deren Betreff mit den Buchstaben xyz endet |
Metazeichen | |
. | (Punkt) Entspricht jedem einzelnen Zeichen, mit Ausnahme neuer Zeilen. |
| | (Pipe) Zeigt eine Alternation an, d. h. ein "oder". Beispiel: katze|hund entspricht den Wörtern katze oder hund |
\ | Zeigt an, dass das nächste Zeichen ein Buchstabe und kein Sonderzeichen ist. Beispiel: \. entspricht einem literalen Punkt und nicht einem beliebigen Zeichen (Punktzeichen). |
Zeichenklassen | |
[…] | Entspricht jedem Zeichen aus einer Reihe von Zeichen. Trennen Sie das erste und das letzte Zeichen mit einem Gedankenstrich. Beispiel: [123] entspricht der Zahl 1, 2 oder 3 [a-f] entspricht jedem Buchstaben von a bis f Hinweis: Bei regulären Ausdrücken in den Richtlinien für Inhaltskonformität wird die Groß- bzw. Kleinschreibung beachtet. |
[^…] | Entspricht jedem Zeichen, das sich nicht in einer Reihe von Zeichen befindet. Beispiel: [^a-f] entspricht jedem Buchstaben, der kein Buchstabe von a bis f ist Hinweis: Bei regulären Ausdrücken in den Richtlinien für Inhaltskonformität wird die Groß- bzw. Kleinschreibung beachtet. |
[:alnum:] | Entspricht alphanumerischen Zeichen, d. h. Buchstaben oder Zahlen: a-z, A-Z oder 0-9 Hinweis: Diese Zeichenklasse muss mit zwei weiteren eckigen Klammern umgeben sein, wenn Sie sie in einem regulären Ausdruck verwenden, z. B.: [[:alnum:]]. |
[:alpha:] | Entspricht alphabetischen Zeichen, d. h. Buchstaben: a-z oder A-Z Hinweis: Diese Zeichenklasse muss mit zwei weiteren eckigen Klammern umgeben sein, wenn Sie sie in einem regulären Ausdruck verwenden, z. B.: [[:alpha:]]. |
[:digit:] | Entspricht Zahlen: 0–9 Hinweis: Diese Zeichenklasse muss mit zwei weiteren eckigen Klammern umgeben sein, wenn Sie sie in einem regulären Ausdruck verwenden, z. B.: [[:digit:]]. |
[:graph:] | Entspricht nur sichtbaren Zeichen, d. h. allen Zeichen außer Leerzeichen, Steuerzeichen usw. Hinweis: Diese Zeichenklasse muss mit zwei weiteren eckigen Klammern umgeben sein, wenn Sie sie in einem regulären Ausdruck verwenden, z. B.: [[:graph:]]. |
[:punct:] | Entspricht Interpunktionszeichen und Symbolen: ! " # $ % & ' ( ) * + , \ -. / : ; < = > ? @ [ ] ^ _ ` { | } Hinweis: Diese Zeichenklasse muss mit zwei weiteren eckigen Klammern umgeben sein, wenn Sie sie in einem regulären Ausdruck verwenden, z. B.: [[:punct:]]. |
[:print:] | Entspricht sichtbaren Zeichen und Leerzeichen. Hinweis: Diese Zeichenklasse muss mit zwei weiteren eckigen Klammern umgeben sein, wenn Sie sie in einem regulären Ausdruck verwenden, z. B.: [[:print:]]. |
[:space:] | Entspricht allen Whitespace-Zeichen einschließlich Leerzeichen, Tabulatorzeichen und Zeilenumbrüchen. Hinweis: Diese Zeichenklasse muss mit zwei weiteren eckigen Klammern umgeben sein, wenn Sie sie in einem regulären Ausdruck verwenden, z. B.: [[:space:]]. |
[:word:] | Entspricht jedem Textzeichen, d. h. jedem Buchstaben, jeder Zahl und Unterstrichen: a-z, A-Z, 0-9 oder _ Hinweis: Diese Zeichenklasse muss mit zwei weiteren eckigen Klammern umgeben sein, wenn Sie sie in einem regulären Ausdruck verwenden, z. B.: [[:word:]]. |
Abkürzungen für Zeichenklassen | |
\w | Entspricht jedem Textzeichen, d. h. jedem Buchstaben, jeder Zahl und Unterstrichen: a-z, A-Z, 0-9 oder _ Gleichbedeutend mit [:word:] |
\W | Entspricht jedem Zeichen, das kein Textzeichen ist, d. h. jedem Zeichen, das kein Buchstabe, keine Zahl und kein Unterstrich ist: Gleichbedeutend mit [^[:word:]] |
\s | Entspricht einem beliebigen Whitespace-Zeichen. Verwenden Sie dieses Zeichen z. B., um ein Leerzeichen zwischen zwei Wörtern in einem Satz anzugeben: stock\stips entspricht stock tips Gleichbedeutend mit [:space:] |
\S | Entspricht jedem Zeichen, das kein Whitespace-Zeichen ist. Gleichbedeutend mit [^[:space:]] |
\d | Entspricht jeder Zahl von 0–9. Gleichbedeutend mit [:digit:] |
\D | Entspricht jedem Zeichen, das keine Zahl von 0–9 ist. Gleichbedeutend mit [^[:digit:]] |
Gruppe | |
(…) | Gruppiert Teile eines Ausdrucks. Verwenden Sie Gruppierungen, um einen Quantifikator auf eine Gruppe anzuwenden oder um eine Zeichenklasse vor oder nach einer Gruppe zu suchen. |
Quantifikatoren | |
{n} | Entspricht genau n-mal dem vorherigen Ausdruck. Beispiel: [a-c]{2} entspricht nur dann jedem Buchstaben von a bis c, wenn zwei Buchstaben hintereinander stehen. Der Ausdruck entspricht also ab und ac, nicht aber abc oder aabbc. |
{n,m} | Entspricht dem vorherigen Ausdruck mindestens n-mal und maximal m-mal. Beispiel: [a-c]{2,4} entspricht nur dann jedem Buchstaben von a bis c, wenn die Buchstaben mindestens 2-mal und maximal 4-mal hintereinander erscheinen. Der Ausdruck entspricht also ab und abc, nicht aber aabbc. |
? | Zeigt an, dass das vorherige Zeichen oder der vorherige Ausdruck 0- oder 1-mal zutreffen kann. Gleichbedeutend mit dem Bereich {0,1}. Der Ausdruck colou?r entspricht z. B. colour oder color, da das ? anzeigt, dass der Buchstabe u optional ist. |
Zeichenbeschränkungen für reguläre Ausdrücke
Reguläre Ausdrücke mit folgenden Sonderzeichen werden nicht unterstützt, da sie die Bearbeitung von E-Mails verzögern können:
- * (Sternchen)
- + (Pluszeichen)