Utilo

Regex-Visualisierer

Visualisieren Sie reguläre Ausdrücke als Railroad-Diagramme, lesen Sie eine verständliche Erklärung jedes Tokens, testen Sie Treffer und kopieren Sie Code für JavaScript, Python, Go, Java, C#, PHP und Rust.

Was dieser Regex-Visualisierer tut

Regelmäßige Ausdrücke sind für die meisten Menschen nur zu schreiben: leicht zu tippen, schwer eine Woche später zu lesen. Dieses Tool analysiert Ihr Muster in einem Syntaxbaum und zeigt es auf drei Arten. Ein Eisenbahndiagramm zeichnet das Muster als eine Spur, die man von links nach rechts folgen kann, mit Zweigen für Abwechslung, Schleifen für Wiederholung und gekennzeichneten Kästchen für Gruppen. Eine ** einfache Sprache Erklärung ** geht durch jedes Token ("eine oder mehrere Ziffern", "benannt Gruppe Jahr", "nicht gefolgt von"). Und code-Snippets zeigen, wie man das genaue Muster mit der richtigen Flucht in JavaScript, Python, Go, Java, C#, PHP und Rust verwendet. Eine Live-Test-String markiert Übereinstimmungen, während Sie tippen.

So verwenden Sie es

  1. Ein Muster eingeben oder einfügen. Sie können Schrägstellen und Flaggen wie /^\d{4}-\d{2}$/gm einfügen oder die Flaggen separat eingeben.
  2. Folgen Sie dem Eisenbahndiagramm, um die Gesamtform des Musters zu sehen.
  3. Lesen Sie die Erläuterungsliste für eine Token-für-Token-Beschreibung.
  4. Geben Sie eine Testzeile ein, um zu sehen, was passt und welche Gruppen was erfassen.
  5. Kopieren Sie einen fertigen Ausschnitt in Ihrer Sprache.

Das Eisenbahndiagramm lesen

  • Abgerundete Kästchen sind wörtlicher Text; Quadratkästchen sind Zeichenklassen wie digit oder eine von az.
  • Ein Weg, der sich in parallele Schienen aufspaltet, ist eine Abwechslung (a|b).
  • Eine Schiene, die sich unter eine Box zurückschleppt, bedeutet "wiederholen"; eine Schiene, die die Box umgeht, bedeutet "optional".
  • Die gestrichelten Bilder sind Gruppen; die Aufnahmegruppen sind nummeriert und die benannten Gruppen zeigen ihren Namen.
  • Lookarounds werden als gekennzeichnete Frames gezeichnet, weil sie Text überprüfen, ohne ihn zu konsumieren.

Tipps

  • Für Geschwindigkeit und Klarheit bevorzuge ich \d und Zeichenklassen gegenüber langen Abwechslungen.
  • Bei den faulen Quantifikatoren (*?, +?) wird in der Erläuterung "so wenig wie möglich" angegeben.
  • Wenn Sie Muster portieren, denken Sie daran, dass Go's RE2-Engine keine Lookarounds oder Rückverweise unterstützt; das Go-Snippet warnt Sie, wenn Ihr Muster sie verwendet.
  • Escape Backslashes in normalen String-Literalen oder verwenden Sie Rohstrings (r"..." in Python, Backticks in Go) wie die Snippets.

Häufige Fragen

Welchen Regex-Geschmack benutzt man?

Der Parser und der Matcher verwenden JavaScript (ECMAScript 2024) Syntax, einschließlich benannter Gruppen, Lookbehind und Unicode-Eigenschaften, die mit der u-Flagge entkommen.

Wie unterscheidet sich das vom Regex-Tester?

Der Regex-Tester konzentriert sich auf das Abgleich und Ersetzen von Text. Der Visualisierer konzentriert sich darauf, ein Muster zu verstehen und zu dokumentieren.

Kann ich das Diagramm speichern?

Das Diagramm ist ein SVG; mit der rechten Maustaste klicken, um das Bild zu speichern oder zu kopieren.

Verlässt mein Muster oder Text den Browser?
  • Nein, nicht wirklich. Parsen, Zeichnen und Abgleichen geschehen lokal.

Ja. Die gesamte Verarbeitung erfolgt direkt in deinem Browser mit JavaScript, Web Workern und Web-APIs. Nichts, was du eingibst, einfügst oder hochlädst, wird an unsere Server gesendet.

Diese Seite wurde automatisch aus dem Englischen übersetzt. Wenn dir ein Fehler auffällt, sag uns bitte Bescheid.