Regex Debugger — Beispiele

Lauffähige Durchläufe mit dem Regex Debugger: E-Mails matchen, Capture-Gruppen lesen, benannte Gruppen, Flags ausprobieren und Lookaround testen.

Zurück zur Übersicht: Regex Debugger · Tool live öffnen: www.jpkc.com/tools/regex/

Das Manual beschreibt jedes Feld und jeden Flag. Diese Seite ergänzt das um konkrete Durchläufe: echte, in der JavaScript-Engine lauffähige Muster, jeweils mit dem passenden Test-Text und der Erklärung, was du in der Treffer-Anzeige siehst. Alle Beispiele kannst du direkt eintippen — Muster ins Pattern-Feld, Text ins Test String-Feld, Flags wie angegeben setzen.

Beispiel 1: E-Mail-Adressen matchen

Der Klassiker — alle E-Mail-Adressen in einem Text finden.

  • Pattern: [\w.+-]+@[\w-]+\.[\w.-]+
  • Flags: g
  • Test String:
Schreib an info@example.com oder an support@mail.example.org.
Spam an: nope@.com (ungültig).

Mit aktivem g listet Matches beide gültigen Adressen als Treffer 1 und 2, jeweils mit pos X-Y, und markiert sie farbig im Text. Die ungültige Variante nope@.com wird (je nach Muster) gar nicht oder nur teilweise getroffen — genau dafür ist der Debugger da: Du siehst sofort, wo dein Muster zu großzügig oder zu streng ist. Schalte g testweise aus und beobachte, wie die Liste auf nur den ersten Treffer zusammenschrumpft.

Beispiel 2: Capture-Gruppen lesen — ein Datum zerlegen

Capture-Gruppen fangen Teile eines Treffers separat ein. Hier zerlegst du ein Datum in Tag, Monat und Jahr.

  • Pattern: (\d{2})\.(\d{2})\.(\d{4})
  • Flags: g
  • Test String:
Termin am 19.06.2026, Deadline 30.06.2026.

Jeder Treffer zeigt unter dem Match-Wert die nummerierten Gruppen: Group 1: den Tag, Group 2: den Monat, Group 3: das Jahr. So prüfst du, ob deine Klammern die richtigen Stücke fassen, bevor du sie im Code über match[1], match[2] … weiterverarbeitest. Beachte: Die Punkte im Muster sind als \. escaped — ein nackter . würde jedes Zeichen treffen.

Beispiel 3: Benannte Capture-Gruppen

Statt dir Group 1/2/3 zu merken, gibst du den Gruppen Namen. Das ist auch das Start-Beispiel des Tools.

  • Pattern: (?<day>\d{2})\.(?<month>\d{2})\.(?<year>\d{4})
  • Flags: g
  • Test String:
Termin am 19.06.2026.

In Matches erscheinen jetzt zusätzlich zu den nummerierten Gruppen die benannten als <day>:, <month>: und <year>: mit ihren Werten. Im Code liest du sie später über match.groups.day aus — lesbarer und robuster, als sich auf Klammer-Reihenfolgen zu verlassen. Tippst du das Tool-Start-Beispiel (?<word>\w+) ein, siehst du dasselbe Prinzip an einzelnen Wörtern.

Beispiel 4: Flags ausprobieren — i, m und s

Dieselbe Eingabe, drei Flags, drei Ergebnisse. Nimm diesen mehrzeiligen Text:

Fehler: Datei nicht gefunden
fehler: Zugriff verweigert
OK: alles gut
  1. i (case insensitive). Pattern fehler, nur g: trifft nur die kleingeschriebene Zeile. Schalte i dazu — jetzt matchen beide „Fehler"-Zeilen, egal ob groß oder klein.
  2. m (multiline). Pattern ^fehler. Ohne m matcht der Anker ^ nur ganz am Stringanfang — die zweite Zeile wird nicht erfasst. Mit m (und i) passt ^ auf jeden Zeilenanfang, und die „fehler"-Zeile mitten im Text wird getroffen.
  3. s (dotall). Pattern Fehler.*verweigert mit i. Ohne s matcht . keinen Zeilenumbruch, der Treffer kommt nicht zustande. Mit s darf . auch Newlines überspringen — der Ausdruck spannt jetzt über die Zeilengrenze hinweg.

So bekommst du ein Gefühl dafür, dass die Flags keine Kosmetik sind, sondern die Semantik des Musters verändern.

Beispiel 5: Lookaround — Kontext prüfen, ohne ihn zu fangen

Lookahead und Lookbehind prüfen die Umgebung eines Treffers, ohne sie selbst Teil des Matches zu machen. JavaScript beherrscht beide Richtungen.

  • Pattern (Lookbehind): (?<=€\s?)\d+(?:,\d{2})?
  • Flags: g
  • Test String:
Preis: € 19,99 — reduziert von € 29,99. Artikelnummer 12345.

Der positive Lookbehind (?<=€\s?) verlangt, dass vor der Zahl ein Euro-Zeichen (optional mit Leerzeichen) steht — gematcht wird aber nur die Zahl. So findest du Beträge, ohne die 12345 ohne Euro-Präfix einzusammeln. In der Trefferliste siehst du jeweils nur 19,99 und 29,99, nicht das .

Beispiel 6: Ungültiges Muster und Nulllängen-Treffer

Zwei lehrreiche Randfälle.

  • Ungültiges Muster: Tippe (unbalanciert ins Pattern-Feld. Es lässt sich kein RegExp bauen — statt einer Trefferliste erscheint die Original-Fehlermeldung der Engine, und der Zähler steht auf „Error". Schließt du die Klammer ((unbalanciert)), verschwindet der Fehler sofort.
  • Nulllängen-Treffer: Pattern \b, Flags g, beliebiger Text. Eine Wortgrenze hat keine Breite — sie matcht „zwischen" Zeichen. Das Tool zählt diese Treffer korrekt durch (jeder mit pos X-X, Start gleich Ende), ohne sich in der Endlosschleife zu verfangen, die ein globaler Nulllängen-Match sonst auslösen würde.

Noch tiefer: die Übersicht zum großen Bild, das Manual für jede Funktion im Detail und die Tipps & Tricks für Stolperfallen und Engine-Eigenheiten. Ausprobieren kannst du alles direkt im Tool.