Regex
Regex-Tester
Testen Sie reguläre Ausdrücke live an Ihrem eigenen Text.
Über reguläre Ausdrücke
Ein regulärer Ausdruck (Regex) ist ein Muster, das eine Menge von Zeichenketten beschreibt — verwendet, um Text zu suchen, zu validieren oder zu extrahieren. Dieser Tester führt die native Regex-Engine von JavaScript vollständig in Ihrem Browser aus, sodass Sie ein Muster an echtem Text ausprobieren und genau sehen können, was es trifft.
Quantifizierer gibt es in zwei leicht zu verwechselnden Varianten: gierige (+, *, {2,5}) verbrauchen so viel wie möglich, bevor sie zurückgehen (Backtracking), um den Rest des Musters passen zu lassen, während ihre genügsamen Gegenstücke (+?, *?, {2,5}?) stattdessen so wenig wie möglich verbrauchen. Gegen <a><b> mit <.+> abgeglichen, erfasst ein gieriges Muster die gesamte Zeichenkette, während <.+?> beim ersten > stoppt. Gruppen haben eine ähnliche Gabelung: (...) erfasst den passenden Text zur späteren Verwendung, während (?:...) auf dieselbe Weise gruppiert, ohne zu erfassen — nützlich, wenn Sie die Vorrangregelung der Gruppierung brauchen, aber nicht deren Ausgabe.
Wo Sie darauf treffen
- Eingabeformate wie E-Mail-Adressen, Telefonnummern oder Postleitzahlen validieren
- Strukturierte Werte aus Logzeilen oder unstrukturiertem Text extrahieren
- Ein Suchen-und-Ersetzen-Muster für ein Refactoring über viele Dateien hinweg schreiben
- Debuggen, warum ein Muster mehr oder weniger trifft, als Sie erwartet haben
Häufige Fragen
Warum trifft mein Muster nur einmal?
Ohne das g-Flag (global) stoppen die Regex-Methoden von JavaScript nach dem ersten Treffer — das ist das tatsächliche Verhalten, das auch Ihr Code sehen würde, keine Einschränkung dieses Tools. Aktivieren Sie g, um jeden Treffer zu finden.
Wird etwas, das ich hier eingebe, an einen Server gesendet?
Nein. Der Abgleich erfolgt vollständig in Ihrem Browser mit der integrierten Regex-Engine von JavaScript — nichts wird irgendwohin übertragen, wodurch auch vermieden wird, einen Server einem absichtlich langsamen „katastrophalen Backtracking“-Muster auszusetzen.
Warum bleibt die Seite bei manchen Mustern manchmal hängen?
Bestimmte Muster, wie verschachtelte Quantoren etwa (a+)+, können katastrophales Backtracking verursachen, bei dem die Abgleichzeit exponentiell mit der Eingabelänge wächst. Wenn ein Muster hängen bleibt, liegt es am Muster selbst, nicht an diesem Tool — versuchen Sie einen kürzeren Testtext oder schreiben Sie das Muster um, um verschachtelte Wiederholungen zu vermeiden.
Was ist der Unterschied zwischen gierigen und genügsamen Quantifizierern?
Ein gieriger Quantifizierer (+, *, {2,5}) passt zunächst so viel Text wie möglich und geht nur zurück, wenn dies den Rest des Musters scheitern lässt. Sein genügsames Gegenstück, geschrieben mit einem angehängten ? (+?, *?), passt stattdessen so wenig wie möglich und erweitert sich nur, wenn es muss. Gegen <a><b> passt das gierige Muster <.+> die gesamte Zeichenkette, während das genügsame <.+?> beim ersten > stoppt. Greifen Sie zu genügsamen Quantifizierern, wann immer „die kürzestmögliche Übereinstimmung“ das ist, was Sie wirklich wollen.