Inhaltsverzeichnis
Reguläre Ausdrücke
Definition
RegEx bieten eine mächtige Sprache zum Vergleich und Ersetzen von Strings.
- Jeder reguläre Ausdruck besteht aus mehreren Bereichen, die durch einen vertikalen Strich (|) voneinander abgegrenzt werden.
- Jeder Bereich enthält wiederum eine Auswahl entsprechender Ausdrücke; Sobald einer dieser Bereiche erfüllt ist, wird die Aktion, die an den regulären Ausdruck gekoppelt ist, ausgeführt.
- Jeder Bereich besteht aus 0 oder mehr Atomen, die jeweils einen beliebigen Modifikator haben können.
- Jedes Atom birgt Zeichen; Atome können verschiedenen Ausdrücke sein, sind aber meist einfache Zeichen oder Wildcards (.)
- Maskierung mit
\
Grundlegende Elemente
| Atom | Bedeutung |
|---|---|
| [] | Angabe eines Wertebereichs |
| [0-9] \d | Eine Ziffer |
| [a-z] | Kleinbuchstaben |
| \s | Ein Leerzeichen |
| einfache reguläre Ausdrücke | Ausgabe |
|---|---|
| replace(“xyz”, “x”, “a”) | “ayz” |
| replace(“xyz”, “.”, “a”) | “aaa” |
replace(“xyz”, “x|z”, “a”) | “aya” |
replace(“xyz”, “x_|z”, “a”) | “xya” |
replace(“x_y_z”, “x_'|z”, “a”) | “ay_a” |
| Modifikator | Bedeutung |
|---|---|
| (keiner) | Atom muss genau 1 mal auftreten |
| ? | Atom muss 0 oder 1 mal auftreten |
| * | Atom muss 0 oder mehr mal auftreten |
| + | Atom muss 1 mal oder mehr mal auftreten |
| {n} | Atom muss genau n mal auftreten |
| {n,} | Atom muss mindestens n mal auftreten |
| {n,m} | Atom muss mindestens n mal und maximal m mal auftreten |
Häufig benötigte Reguläre Ausdrücke
Prüfung auf gültige E-Mail-Syntax:
'/^([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})$/iSymphony Project
^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$http://www.regular-expressions.info/email.html
^([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})$
Prüfung einer Telefonnummer:
- Geforderte Schreibweise: +49 341 1234 - 567
- Die Angabe der Durchwahl ist optional. Wird diese jedoch angegeben, dann mit der gezeigten Trennung
^\+[1-9][0-9]{0,2}\s[1-9][0-9]{1,4}\s[0-9]{3,7}(\s\-\s)?[0-9]{0,4}$
- Erklärung:
^und$- umschließen den Ausdruck und fordern exakte Übereinstimmung+[1-9][0-9]{0,2}- Die Nummer beginnt mit einem+, gefolgt von 1-3 Ziffern, wobei die erste keine 0 sein darf.\ses folgt ein Leerzeichen[1-9][0-9]{1,4}- Die Ortsvorwahl besteht aus 2-5 Ziffern, wobei die erste keine 0 sein darf.\s- Es folgt ein Leerzeichen.[0-9]{3,7}- die eigentliche Nummer(\s\-\s)?- ein optionaler Block zum abtrennen der Durchwahl[0-9]{0,4}- die optionale Durchwahl mit max. 4 Ziffern