Geben Sie einen Teststring ein, um hervorgehobene Matches zu sehen.
Keine Matches.
Kritisiere diesen Regex auf katastrophales Backtracking und RE2-Kompatibilität und schlage dann eine strengere Version mit Kompromissen vor: `//gi` Gefundene Treffer: (none)
Was es tut
Testet einen JavaScript-Regex gegen beliebigen Text - live, während du tippst. Tippe ein Muster, schalte beliebige der sechs Flags um (g global, i Groß-/Kleinschreibung ignorieren, m multiline, s dotAll, u unicode, y sticky), und das Tool listet jeden Match mit Index und Capture-Gruppen, hebt alle Treffer im Teststring hervor und zeigt das konstruierte /pattern/flags-Literal kopierbereit an.
Es nutzt die native RegExp deiner Engine - dieselbe Semantik, die dein Code bekommt - und meldet ungültige Muster mit der eigenen Fehlermeldung der Engine (z. B. missing terminating ] for character class) statt eines generischen Fehlers. Das Matching ist auf 2.000 Matches gedeckelt, und Zero-Width-Matches werden erkannt und als dünne Marker dargestellt, statt die Schleife aufzuhängen. 100 % im Browser.
So verwendest du es
- Klicke in der Werkzeugleiste auf einen Preset - Email, URL, Date, Hex color oder Capture - um ein fertiges Muster, ein Flag-Set und Beispieltext zu laden. Jeder Preset setzt alle sechs Flags explizit, sodass beim Wechseln der Presets nie ein veraltetes Flag übrig bleibt.
- Tippe dein Muster in das Feld Pattern (zwischen
/-Delimitern gezeigt, die aktiven Flags live angehängt). Klicke auf Copy in der Abschnittsüberschrift, um das vollständige/pattern/flags-Literal zu kopieren. - Schalte beliebige der sechs Flags um; jeder Schalter zeigt seinen Namen und einen einzeiligen Hinweis (z. B.
sdotAll - “. matcht auch Zeilenumbrüche”). Voreingestellt sindg+i. - Tippe oder füge Text in Test string ein - das Zeilenlabel zeigt den Live-Stand der Match-Anzahl.
- Beobachte die Match-Vorschau: Jeder Treffer ist umrandet; Matches der Länge null erscheinen als dünner Balken, damit du siehst, wo sie landen.
- Lies Matches: eine Karte pro Match mit
#n @ index, dem gematchten Text und jeder Capture-Gruppe ([1],[2], …) - mit(undefined)für Gruppen, die nicht teilgenommen haben. - Klicke auf Clear (Werkzeugleiste), um Muster, Flags und Teststring mit einem Tipp zurückzusetzen.
- Unter der Ausgabe kopiert die Prompt-Leiste einen vorgefertigten KI-Prompt aus deinen Live-Werten - Critique & improve (prüft das Muster auf katastrophales Backtracking) oder Generate Python tests (schreibt
re-Unit-Tests aus den aktuellen Matches).
Beispiele
Verifiziert mit dem exakten Matching-Durchlauf des Tools (dieselbe RegExp-Konstruktion und derselbe exec-Lauf wie in der Island) auf den eingebauten Presets:
Email-Preset /[\w.+-]+@[\w-]+\.[\w.]+/gi auf Contact ada@example.com or bob@test.co.uk today.
1. "ada@example.com" @ 8
2. "bob@test.co.uk" @ 27
Capture-Preset /(\w+)@(\w+)/g auf ada@example bob@test - Gruppen pro Match gelistet:
1. "ada@example" @ 0 → [ada, example]
2. "bob@test" @ 12 → [bob, test]
Hex-color-Preset /#(?:[0-9a-f]{3}|[0-9a-f]{6})\b/gi auf Brand #3b82f6, accent #38BDF8, short #fff.
1. "#3b82f6" @ 6
2. "#38BDF8" @ 22
3. "#fff" @ 37
Ohne g-Flag - nur der erste Match wird gemeldet. Muster /\d{4}-\d{2}-\d{2}/ auf Shipped 2026-08-15, due 2026-09-01. → 1. "2026-08-15" @ 8 (mit g matchen beide Daten: @ 8 und @ 24).
Zero-Width-Muster /\b/g auf ab → zwei leere Matches bei @ 0 und @ 2, in der Vorschau als dünne Marker gerendert.
Gut zu wissen
- Privat: Das Matching läuft vollständig in deinem Browser; nichts, was du einfügst, wird hochgeladen.
- Der Dialekt ist ECMAScript (
RegExp). Lookbehind, benannte Gruppen undu-Modus-Eigenschaften funktionieren, wenn dein Browser sie unterstützt - das Tool legt nichts obendrauf. - Das
y-Flag (sticky) lässt Matches beilastIndexbeginnen - ein Sticky-Muster liefert daher oft null Matches, bis der Text passt. Das ist das Flag bei der Arbeit, kein Bug. - Ein leerer Teststring zeigt einen Hinweis statt einer Vorschau; ein ungültiges Muster hält den Text sichtbar, mit dem Fehler der Engine darunter.
- Verwandte Tools: Regex Explainer, Find & Replace, Text Diff Viewer