Reguläre Ausdrücke sehen aus wie Kauderwelsch, bis die Teile einrasten — dann sind sie eines der nützlichsten Werkzeuge, die du hast. Hier ein einsteigerfreundlicher Spickzettel, den du dir wirklich merken kannst.
Zeichenklassen
.— jedes Zeichen (außer Zeilenumbruch, außer mits-Flag).\d— eine Ziffer;\D— keine Ziffer.\w— ein Wortzeichen (Buchstabe, Ziffer, Unterstrich);\W— das Gegenteil.\s— Leerraum;\S— kein Leerraum.[abc]— eines von a, b, c.[a-z]— ein Bereich.[^abc]— alles außer a, b, c.
Quantoren (wie viele)
*— null oder mehr.+— eins oder mehr.?— null oder eins (optional).{3}— genau 3.{2,4}— 2 bis 4.{2,}— 2 oder mehr.- Ein
?nach einem Quantor macht ihn faul (so wenig wie möglich):.+?.
Anker und Grenzen
^— Anfang des Strings (mitmpro Zeile).$— Ende.\b— eine Wortgrenze — ideal für ganze Wörter wie\bcat\b.
Gruppen und Alternation
( … )— eine Capture-Gruppe; der Treffer wird als Gruppe 1, 2, … gemerkt.(?: … )— eine Gruppe, die nicht captured (nur zur Struktur).a|b— trifft a oder b.
Flags
g— alle Treffer finden, nicht nur den ersten.i— Groß-/Kleinschreibung ignorieren.m—^und$treffen pro Zeile.s—.trifft auch Zeilenumbrüche.
Ein paar praktische Muster
- Nur Ziffern:
^\d+$ - Ein einfaches Datum:
\d{4}-\d{2}-\d{2} - Wörter:
\b\w+\b - Eine grobe E-Mail:
[^@\s]+@[^@\s]+\.[^@\s]+
(Echte E-Mail-Validierung ist bekanntlich schwer — ein grobes Muster wie dieses reicht für eine schnelle Prüfung, nicht für RFC-perfekte Validierung.)
Tipps, die Stunden sparen
- Baue schrittweise auf. Beginne mit einem kleinen Teil und ergänze, während du die Treffer live verfolgst.
- Escape Sonderzeichen, die du wörtlich meinst:
\.,\?,\(. - Vorsicht beim gierigen
.*— es greift so viel wie möglich; nutze.*?oder eine spezifischere Klasse, wenn es überzieht. - Teste an echten Daten, inklusive der Randfälle, die scheitern sollen.
Am schnellsten lernst du, indem du Treffer beim Tippen aufleuchten siehst. Probiere Muster live im kostenlosen Regex-Tester — er hebt jeden Treffer hervor und listet Capture-Gruppen, alles im Browser.