← Alle Tools

Regex-Tester

Erstelle, teste und debugge reguläre Ausdrücke live an deinem eigenen Text im Browser. Lerne Zeichenklassen, Quantoren, Anker, Gruppen und Flags kennen.

Regex-Tester: Muster gegen den eigenen Text aufbauen und debuggen

Ein regulärer Ausdruck ist eine winzige Sprache, um die Form von Text zu beschreiben. Statt zu fragen "Steht hier genau dieses Wort?", erlaubt eine Regex die Frage "Gibt es eine Zeichenfolge, die so aussieht?" Genau das macht sie so mächtig beim Suchen, Validieren, Extrahieren und Ersetzen von Text in Code-Editoren, Logdateien, Formulareingaben und Skripten. Und genau das macht es auch leicht, Fehler zu machen, denn ein Muster, das im Kopf einleuchtend klingt, kann unbemerkt zu viel, zu wenig oder gar nichts treffen.

Deshalb schlägt interaktives Testen das bloße Raten. Wenn Sie ein Muster eintippen und beobachten, wie Treffer quer durch echten Beispieltext aufleuchten, erhalten Sie sofortiges Feedback: Sie sehen, was erfasst wurde, was durchgerutscht ist und welche Erfassungsgruppe welches Stück gegriffen hat. Unser Regex-Tester läuft vollständig in Ihrem Browser. Ihr Muster und Ihr Beispieltext verlassen die Seite nie, sodass Sie Logzeilen, E-Mails oder Produktionsdaten einfügen können, ohne irgendetwas an einen Server zu senden.

Leuchtend cyanfarbener Filter, der bestimmte goldene Token aus einem fließenden Datenstrom auf dunkel-indigofarbenem Hintergrund herausgreift
Eine Regex wirkt wie ein Filter und wählt nur die Token aus, die Ihrem Muster entsprechen.

Die Bausteine, die man kennen sollte

Die meisten alltäglichen Muster setzen sich aus einer kleinen Menge von Elementen zusammen. Wenn Sie diese beherrschen, können Sie die Mehrheit der Regexes lesen, die Ihnen in freier Wildbahn begegnen.

Zeichenklassen beschreiben eine Menge erlaubter Zeichen. [aeiou] trifft einen beliebigen einzelnen Vokal, [0-9] trifft eine Ziffer und [a-zA-Z] trifft einen Buchstaben. Ein Zirkumflex innerhalb der Klammern negiert die Menge, sodass [^0-9] "jedes Zeichen, das keine Ziffer ist" bedeutet. Kurzschreibweisen sparen Tipparbeit: \d ist eine Ziffer, \w ist ein Wortzeichen (Buchstaben, Ziffern, Unterstrich), \s ist ein Leerraumzeichen und der Punkt . trifft fast jedes einzelne Zeichen.

Quantoren geben an, wie oft sich das vorherige Element wiederholen darf. * bedeutet null oder mehr, + bedeutet eins oder mehr und ? bedeutet null oder eins (optional). Für genaue Anzahlen bedeutet {3} exakt drei und {2,4} zwei bis vier. So trifft \d{4} eine vierstellige Jahreszahl und colou?r trifft beide Schreibweisen.

Anker heften ein Muster an eine Position statt an ein Zeichen. ^ trifft den Anfang des Textes, $ trifft das Ende und \b markiert eine Wortgrenze. Das Muster ^Error trifft nur Zeilen, die mit "Error" beginnen, was genau das ist, was Sie beim Durchsuchen von Logs wollen.

Gruppen umschließen einen Teil eines Musters in Klammern, sowohl um einen Quantor auf mehrere Zeichen auf einmal anzuwenden als auch um den getroffenen Text zur Wiederverwendung zu erfassen. In (\d{4})-(\d{2})-(\d{2}) erfasst jede Gruppe einen Datumsbestandteil, den Sie später herausziehen können. Alternation mit dem senkrechten Strich wirkt wie ein "oder": cat|dog|fish trifft eines der drei Wörter.

Muster, zu denen Sie tatsächlich greifen werden

Einige wiederkehrende Aufgaben decken die meiste echte Arbeit ab. Um etwas E-Mail-Ähnliches zu erfassen, ist [\w.+-]+@[\w-]+\.[\w.-]+ ein pragmatischer Ausgangspunkt; vollständige E-Mail-Validierung nach der formalen Spezifikation ist bekanntermaßen vertrackt, und ein lockeres Muster ist meist die richtige Wahl, um Kandidaten hervorzuheben, statt Nutzer abzuweisen.

Für Zahlen greift \d+ Folgen von Ziffern, während -?\d+(\.\d+)? optionale Minuszeichen und Dezimalstellen trifft. Um führenden und nachgestellten Leerraum zu entfernen, treffen Sie ^\s+|\s+$ und ersetzen es durch nichts. Um doppelte Wörter zu finden, trifft das Rückwärtsverweis-Muster \b(\w+)\s+\1\b ein Wort, gefolgt von sich selbst, wobei sich \1 auf die erste erfasste Gruppe zurückbezieht.

Ausgewählte Wörter, die golden leuchten und innerhalb eines fließenden Flusses cyanfarbener textartiger Partikel auf dunklem Marineblau hervorgehoben sind
Live-Hervorhebung zeigt genau, welche Abschnitte Ihres Textes ein Muster trifft.

Flags ändern das Verhalten beim Matching

Flags sind Schalter, die das gesamte Muster verändern. Das globale Flag (g) findet jeden Treffer, statt beim ersten aufzuhören, was Sie beim Hervorheben aller Vorkommen wollen. Das Groß-/Kleinschreibung-ignorierende Flag (i) sorgt dafür, dass error sowohl "Error" als auch "ERROR" trifft. Das Mehrzeilen-Flag (m) verändert ^ und $ so, dass sie am Anfang und Ende jeder Zeile treffen, nicht nur des gesamten Textes, was für zeilenweise Logarbeit unerlässlich ist. Weitere nützliche Flags sind s (dotall, sodass der Punkt auch Zeilenumbrüche trifft) und u für vollständige Unicode-Behandlung.

Die Varianten unterscheiden sich je nach Sprache leicht

Regex ist eine Familie von Dialekten, kein einziger fester Standard. JavaScript, Python, PCRE (PHP), Java, .NET, Go und Rust stimmen in der oben genannten Kernsyntax überein, weichen aber an den Rändern voneinander ab: Unterstützung für Lookbehind, Syntax benannter Gruppen ((?<name>...) versus (?P<name>...)), Unicode-Eigenschafts-Escapes und welche Flags existieren – all das variiert. Ein Muster, das in einer Engine funktioniert, braucht in einer anderen vielleicht eine kleine Anpassung, daher lohnt es sich, gegen die Variante zu testen, die Sie tatsächlich ausliefern. Wenn Sie ein Muster sauber eingestellt haben, können unsere weiteren Entwicklerwerkzeuge und Textwerkzeuge bei der umgebenden Arbeit des Bereinigens, Kodierens und Umwandelns der gerade getroffenen Daten helfen.

Häufig gestellte Fragen

Wird mein Text an einen Server gesendet?

Nein. Der Regex-Tester läuft vollständig in Ihrem Browser. Ihr Muster und Ihr Beispieltext bleiben auf Ihrem Gerät und werden nie hochgeladen, sodass es sicher ist, vertrauliche Daten einzufügen.

Welche Regex-Variante verwendet dieses Werkzeug?

Es verwendet die in Ihren Browser eingebaute JavaScript-Regex-Engine. Die Kernsyntax entspricht dem, was Sie aus den meisten Sprachen kennen, auch wenn sich einige fortgeschrittene Funktionen leicht von PCRE, Python oder .NET unterscheiden.

Was ist der Unterschied zwischen gierigem und genügsamem Matching?

Standardmäßig sind Quantoren gierig und greifen so viel Text wie möglich. Ein Fragezeichen macht sie genügsam, sodass sie so wenig wie möglich greifen. Zum Beispiel ist das Muster Punkt-Stern gierig, während Punkt-Stern-Fragezeichen genügsam ist.

Wie treffe ich ein wörtliches Sonderzeichen?

Maskieren Sie es mit einem Backslash. Um einen tatsächlichen Punkt zu treffen, schreiben Sie Backslash Punkt. Dasselbe gilt für andere Metazeichen wie Klammern, eckige Klammern, das Pluszeichen und das Fragezeichen.

Warum trifft mein Muster nichts?

Häufige Ursachen sind ein fehlendes globales Flag, Anker, die den Treffer an die falsche Position heften, ein nicht maskiertes Sonderzeichen oder gierige Quantoren, die über die erwartete Grenze hinauslaufen. Testen Sie Stück für Stück, um den Übeltäter zu finden.

Kann ich Teile des Treffers erfassen?

Ja. Umschließen Sie einen Abschnitt des Musters mit Klammern, um eine Erfassungsgruppe zu erstellen. Jede Gruppe wird separat ausgegeben, sodass Sie Felder wie Jahr, Monat und Tag aus einem Datum extrahieren können.