Regex-Tester
Mustervergleichstext für reguläre Ausdrücke zur Validierung, zum Suchen/Ersetzen und zum Parsen von Protokollen. Testen Sie Muster mit Live-Hervorhebung, bevor Sie sie in den Produktionscode übernehmen — vermeiden Sie katastrophale Backtracking-Überraschungen bei Benutzereingaben.
Pattern
Flags
Test text
Output
[0] Hello
[6] world
[12] 123
So testen Sie einen regulären Ausdruck
1. Gib ein Regex-Muster ein (ohne äußere Schrägstriche oder mit Flags).
2. Flags setzen: g global, i ohne Berücksichtigung der Groß- und Kleinschreibung, m mehrzeilig.
3. Fügen Sie Beispieltext in den Testzeichenfolgenbereich ein.
4. Prüfe Übereinstimmungen, erfassen Sie Gruppen und ersetzen Sie die Vorschau, falls verfügbar.
Regex-Beispiele
E-Mail-Validierung
^[\w.-]+@[\w.-]+\.\w+$ fängt einfache E-Mails ab — nicht RFC-perfekt, aber nützlich für Formulare.
Extrahieren Sie ISO-Daten
\d{4}-\d{2}-\d{2} findet 2024-03-15 in Protokollzeilen für grep-Ersetzung.
Slugify-Helfer
Ersetzen Sie [^a-z0-9]+ durch einen Bindestrich für den URL-Slug aus der Titelzeichenfolge.
Wenn Regex hilft
• Bei der Validierung strukturierter Zeichenfolgen (Telefon, Postleitzahl).
• Beim Parsen halbstrukturierter Protokolle.
• Beim Erlernen von Capture-Gruppen und Lookahead.
Wann sollte man Regex vermeiden?
• Nutze beim Parsen von HTML oder JSON die richtigen Parser.
• Wenn Regex unlesbar wird — Aufteilung in Codelogik.
• Bei ReDoS besteht ein Risiko für vom Benutzer bereitgestellte Muster im Server — Zeitüberschreitung und Begrenzung der Länge.
ReDoS-Bewusstsein
Verschachtelte Quantoren wie (a+)+ auf bösen Strings blockieren die CPU — vermeiden Sie Benutzer-Regex auf dem Server oder verwenden Sie sichere Engines mit Zeitüberschreitungen.
Validieren oder extrahieren
Das verankerte Muster ^...$ validiert die gesamte Zeichenfolge; unanchored findet Teilzeichenfolge überall.
In Editoren ersetzen
VS Code verwendet beim Suchen und Ersetzen einen ähnlichen JS-Regex — testen Sie ihn hier und fügen Sie dann das Muster ein.
Häufige Fragen
Welche Regex-Variante?
Es bestehen Unterschiede zwischen JavaScript RegExp und PCRE (die Lookbehind-Unterstützung variiert je nach Engine-Version).
Globale Flagge g?
Findet alle Übereinstimmungen, nicht nur zuerst — testStateful mit lastIndex in JS.
Sonderzeichen entkommen?
. * + ? [ ] ( ) { } | \ ^ $ muss für eine wörtliche Übereinstimmung maskiert werden.
Gruppen erfassen?
Klammern ( ) erstellen nummerierte Gruppen, auf die zugegriffen werden kann, um $1 $2 zu ersetzen.
Lokal?
Yes.
Mehrzeilig ^ $?
m-Flag sorgt dafür, dass ^ $ mit Zeilengrenzen übereinstimmt, nicht mit der gesamten Zeichenfolge.