Regex-Tester
Regex Tester
Testet einen regulären Ausdruck gegen Beispieltext, mit Live-Hervorhebung der Treffer und Auflistung der Fanggruppen.
Führt einen regulären Ausdruck gegen Beispieltext aus und zeigt jeden Treffer mit seinen Offsets, seinen Erfassungsgruppen und der Ersetzung, die er erzeugen würde. Es ist die Engine des Browsers selbst, sodass das, was hier geschieht, das ist, was in Ihrem JavaScript geschehen wird.
Muster
kann irgendwo in der Zeichenkette treffen, 2 Fanggruppen.
Testen gegen
Es werden alle Treffer aufgelistet. Ohne das `g`-Flag verwendet `String.replace` nur den ersten.
0 Treffer
Zeit
0,0 ms
ask@example.com, 문의@example.co.kr and no-reply+tag@mail.example.orgErsetzen
`$1`, `$<name>`, `$&`, `` $` ``, `$'` und `$$` werden alle aufgelöst, genau so, wie `String.replace` sie auflöst.
So funktioniert es
Schreiben Sie das Muster und setzen Sie die Flags
Die Flag-Schaltflächen sind die sechs, die zählen: global, ignore case, multiline, dotAll, unicode und sticky. Das Literal oben ist das, was Sie in Code einfügen würden.
Fügen Sie Text ein, den Sie tatsächlich haben
Treffer werden an Ort und Stelle hervorgehoben, in wechselnder Farbe, damit benachbarte unterscheidbar sind, und in einer Tabelle mit dem Wert jeder Gruppe aufgeführt – einschließlich der Gruppen, die nicht beteiligt waren.
Probieren Sie die Ersetzung
`$1`, `$<name>`, `$&`, `` $` ``, `$'` und `$$` expandieren alle genau so, wie `String.replace` sie expandiert, sodass die Vorschau die echte Ausgabe ist.
Häufige Fragen
Warum warnt die Seite vor einem fehlenden `g`-Flag?
Weil die Liste jeden Treffer zeigt, Ihr Code ohne `g` aber nicht. `String.replace` ändert nur den ersten, und `matchAll` wirft rundheraus. Es ist der Unterschied zwischen dem, was Sie hier sehen, und dem, was Ihr Programm tut.
Ist das dieselbe Engine wie in Python oder PCRE?
Nein – es ist die von JavaScript. Lookbehind, benannte Gruppen und `\p{…}` werden hier unterstützt, aber atomare Gruppen, possessive Quantoren, Rekursion und Inline-Flag-Gruppen nicht, und das Verhalten von Zeichenklassen unterscheidet sich stellenweise. Ein Muster, das hier funktioniert, kann anderswo trotzdem scheitern.
Mein Muster hängt die Seite auf.
Das sollte es nicht – das Matching läuft in einem Worker, gerade weil ein katastrophal zurückverfolgendes Muster auf keine andere Weise unterbrochen werden kann. Dauert es zu lange, wird der Lauf abgebrochen und gemeldet, was auch ein nützliches Signal ist: Ein Muster, das das hier tut, tut es auch auf Ihrem Server.
Warum passt `.` nicht auf meinen Zeilenumbruch?
Weil dafür `s` (dotAll) da ist. Ohne es passt `.` auf alles außer einem Zeilenende – und `m` (multiline) ist noch einmal etwas anderes: Es ändert, was `^` und `$` bedeuten, nicht, worauf `.` passt.
Eingabe aus
Suchen und Ersetzen
Find & Replace
Ersetzt Text wörtlich, als ganzes Wort oder per regulärem Ausdruck, mit Fanggruppen und Vorschau jedes Treffers.
Muster extrahieren
Pattern Extractor
Zieht jede E-Mail-Adresse, URL, Zahl, jedes Datum oder jeden Treffer eines eigenen regulären Ausdrucks aus einem Textblock in eine Liste.
Regex erklären
Regex Explainer
Zerlegt einen regulären Ausdruck in einen beschrifteten Baum, damit Sie lesen können, was jeder Teil tatsächlich matcht.
JSON formatieren und validieren
JSON Formatter & Validator
Formatiert, minimiert und validiert JSON und zeigt bei Syntaxfehlern die genaue Zeile und Spalte.
Danach
Diese Tools nehmen an, was dieses hier erzeugt, das Ergebnis kann also direkt weiter.
Cron-Ausdruck erklären
Cron Parser
Erklärt einen Cron-Ausdruck in Klartext und listet die nächsten Ausführungen in einer gewählten Zeitzone auf.
Suchen und Ersetzen
Find & Replace
Ersetzt Text wörtlich, als ganzes Wort oder per regulärem Ausdruck, mit Fanggruppen und Vorschau jedes Treffers.
Regex erklären
Regex Explainer
Zerlegt einen regulären Ausdruck in einen beschrifteten Baum, damit Sie lesen können, was jeder Teil tatsächlich matcht.
Muster extrahieren
Pattern Extractor
Zieht jede E-Mail-Adresse, URL, Zahl, jedes Datum oder jeden Treffer eines eigenen regulären Ausdrucks aus einem Textblock in eine Liste.
JSON ⇄ CSV umwandeln
JSON ⇄ CSV
Flacht verschachteltes JSON zu Spalten ab oder baut Objekte aus einer Tabelle wieder auf, mit Punktpfad-Regel für die Spaltennamen.
JSON vergleichen
JSON Diff
Vergleicht zwei JSON-Dokumente strukturell, ignoriert die Schlüsselreihenfolge und meldet hinzugefügte, entfernte und geänderte Pfade.