Regex-Tester
Einen regulären JavaScript-Ausdruck gegen Ihren Text testen und jeden Treffer und jede Fanggruppe sehen, in Ihrem Browser.
Läuft vollständig in Ihrem Browser. Nichts wird hochgeladen, protokolliert oder gespeichert.
Hervorgehoben
| # | Treffer | Index | Gruppen |
|---|
Schreiben Sie ein Muster, fügen Sie den Text ein, auf den es passen soll, und sehen Sie sofort, was es fängt und was es verfehlt — mit jeder Fanggruppe einzeln aufgeschlüsselt.
Wie es funktioniert
Das Muster wird von Ihrem Browser übersetzt und beim Tippen gegen den Text ausgeführt. Was Sie sehen, ist genau das, was derselbe Ausdruck in JavaScript tun wird, denn es ist dieselbe Engine.
Mit dem Flag g wird jeder Treffer aufgeführt, ohne es nur der erste. Das Flag i übergeht die Groß- und Kleinschreibung, m lässt ^ und $ an Zeilengrenzen passen, s lässt den Punkt auch einen Zeilenumbruch treffen, u schaltet den Unicode-Modus ein und y verankert die Suche am letzten Index.
Nummerierte Fanggruppen erscheinen der Reihe nach; eine als (?<name>…) geschriebene Gruppe wird unter ihrem Namen gezeigt.
Beispiele
| Fall | Eingabe | Ergebnis |
|---|---|---|
| Ein ISO-Datum, in seine Teile zerlegt | (?<year>\d{4})-(?<month>\d{2})-(?<day>\d{2}) | Jahr, Monat und Tag als benannte Gruppen |
| Jeder Hashtag in einem Beitrag | #\w+ | ein Treffer je Hashtag, mit dem Flag g |
Häufige Fragen
Welche Spielart regulärer Ausdrücke ist das?
JavaScript, so wie Ihr Browser es umsetzt. PCRE, von PHP und grep -P benutzt, und RE2, von Go benutzt, weichen bei Lookbehind, bei possessiven Quantoren und bei Unicode-Eigenschaften ab. Ein Muster, das hier funktioniert, funktioniert dort nicht garantiert.
Die Seite ist eingefroren, während ich ein Muster tippte.
Manche Muster backtracken bei bestimmten Eingaben katastrophal — verschachtelte Quantoren wie (a+)+ sind der klassische Fall. Die Suche über den ganzen Text ist begrenzt und gibt mit einer Warnung auf, aber ein einzelner Treffer, der davonläuft, lässt sich durch nichts auf der Seite unterbrechen: JavaScript hat keine Möglichkeit, einen begonnenen regulären Ausdruck anzuhalten. Laden Sie den Tab neu und behandeln Sie es als Befund statt als Unfall: Derselbe Ausdruck würde auf einem Server einen Worker mitreißen.
Soll ich die Schrägstriche mitschreiben?
Nein. Schreiben Sie das Muster für sich und die Flags in das Flags-Feld. /abc/gi als Muster einzufügen macht die Schrägstriche zum Teil dessen, wonach Sie suchen.
Wird mein Testtext irgendwohin gesendet?
Nein, und er ist absichtlich auch vom teilbaren Link ausgenommen. Den Link zu kopieren teilt das Muster und die Flags, nie den Text, gegen den Sie getestet haben.
Gut zu wissen
- Muster werden nie auf dem Server ausgeführt. Ein von einem Besucher gelieferter Ausdruck, der schlecht backtrackt, wäre dort ein Denial of Service; in einem Tab kostet er nichts als den Tab.