Encoders & Utilities

Regex-Tester

JavaScript-Regex testen mit Live-Match-Highlight, Capture-Gruppen und Replace-Vorschau.

g (global), i (case-insensitive), m (multiline), s (dotall), u (unicode), y (sticky)

Quick reference

\d Digit (0–9)
\w Word char (a-z, 0-9, _)
\s Whitespace
[^abc] Anything except a/b/c
^/$ Start / end of line (with m flag)
a* Zero or more
a+ One or more
a? Zero or one
a{n,m} Between n and m repetitions
(?<name>…) Named capture group
(?=…) Lookahead
(?<=…) Lookbehind

Über dieses Tool

Der Regex-Tester evaluiert regular expressions live gegen Testtext, mit Echtzeit-Markierung der Matches, Capturing-Group-Anzeige und Performance-Indikator. Sie geben eine Regex (mit Flags: g, i, m, s, u, y) und Sample-Text ein; wir markieren jedes Match, listen die Capturing-Groups je Match, und zeigen die Anzahl der Treffer plus die Ausführungszeit.

Das Tool unterstützt JavaScript-Regex-Syntax (ECMAScript 2018+) inklusive Named Groups, Lookbehind, Unicode-Classes und Unicode-Property-Escapes (\p{...}). Es zeigt auch die Regex-Syntax-Cheatsheet seitlich und erklärt komplexe Pattern-Bestandteile beim Hover. Eine Substitution-Funktion mit Replace-String und Backreferences ($1, $<name>) hilft, Such-und-Ersetzen-Operationen zu testen.

Wann Sie dieses Tool nutzen sollten

  • Regex-Entwicklung. Pattern interaktiv aufbauen, statt im Code zu raten.
  • Validation-Patterns. E-Mail, Telefonnummer, IBAN — Patterns gegen echte Testfälle prüfen.
  • Daten-Extraktion. Logzeilen, CSV-Felder, HTML-Snippets mit gezielten Patterns auseinandernehmen.
  • Lehre und Lernen. Komplexe Regex Schritt für Schritt verstehen.

Häufige Fallstricke

Catastrophic Backtracking: verschachtelte Quantoren wie (a+)+b auf langen Eingaben ohne Match können sekundenlang laufen — wir brechen mit Timeout ab. Greedy vs. Lazy: .* matcht so viel wie möglich, .*? so wenig wie möglich; das macht oft den Unterschied zwischen "alles" und "nur das nächste". Fehlende Anker: ohne ^ und $ matched ein Pattern überall in einer Zeile, was für Validierungen meist nicht gewünscht ist.

Häufige Fragen

Welche Regex-Dialekte werden unterstützt?

JavaScript-Regex (ECMAScript). Wenn Sie PCRE (PHP, Perl, Python) oder POSIX-Regex (grep, sed) testen, unterscheiden sich einige Features: PCRE unterstützt mehr Lookbehind-Modi, hat Verben wie (*PRUNE), und manche Shortcuts wie \K. Für PCRE-spezifische Patterns nutzen Sie regex101.com mit dem PCRE-Modus.

Was bedeuten die Flags g, i, m, s, u?

g (global) — alle Matches, nicht nur das erste. i (case-insensitive) — Groß-/Kleinschreibung egal. m (multiline) — ^/$ matcht Zeilenanfang/-ende statt Stringanfang/-ende. s (dotall) — . matcht auch Newline. u (unicode) — korrekte Unicode-Verarbeitung, ermöglicht \p{...}. y (sticky) — Suche startet exakt an lastIndex.

Warum hängt manchmal das Tool kurz?

Wahrscheinlich Catastrophic Backtracking — bestimmte Pattern (vor allem mit verschachtelten Quantoren) brauchen exponentielle Zeit auf manchen Eingaben. Wir setzen ein Timeout von 2 Sekunden; danach brechen wir ab und zeigen eine Warnung. Refactorieren Sie das Pattern: atomare Gruppen (in JS via Lookahead simulierbar), Possessive Quantifiers oder einfach präzisere Zeichenklassen.

Werden meine Patterns gespeichert?

Nicht serverseitig — wir loggen keine Eingaben. Das Tool nutzt LocalStorage des Browsers, um Ihren letzten Pattern und Testtext zwischen Tabs/Sessions zu bewahren (rein lokal). Sie können das mit "Reset" oder durch Browser-Daten-Löschen jederzeit entfernen.