Der Regex-Tester hat ein kleines, aber nützliches Update bekommen: Direkt neben der Trefferzahl erscheint jetzt ein Badge mit der gemessenen Ausführungszeit deines Musters — inklusive Warnhinweis, wenn die Form deines Musters an klassische Risikofälle wie verschachtelte Quantoren erinnert.
Was genau wurde am Regex-Tester ergänzt?
KurzantwortIm Reiter „Treffer” erscheint jetzt, direkt neben der Anzahl der gefundenen Treffer, ein kleines Badge mit der clientseitig gemessenen Ausführungszeit deines Musters gegen den aktuellen Test-Text — etwa „Ausgeführt in 2 ms”. Zusätzlich prüft eine einfache Heuristik das Muster selbst auf klassische Risikoformen wie verschachtelte Quantoren (etwa (a+)+); erkennt sie eine solche Form, wechselt das Badge in eine auffälligere Warnfarbe, unabhängig von der aktuell gemessenen Zeit.
Bisher zeigte der Reiter „Treffer” nur die Anzahl der Treffer, die Position jedes Treffers und die zugehörigen Capture-Gruppen an — wie schnell die Auswertung tatsächlich lief, blieb unsichtbar. Wer ein komplexeres Muster mit mehreren verschachtelten Gruppen baute, hatte keinen sofort sichtbaren Hinweis darauf, ob dieses Muster bei längeren oder anders strukturierten Eingaben irgendwann spürbar langsamer werden könnte. Das neue Badge schließt genau diese Lücke, ohne dass du irgendetwas manuell aktivieren oder umschalten musst.
Gut zu wissen: Das Badge ergänzt die Trefferzahl, ersetzt sie aber nicht — Trefferanzahl, Position und Gruppen werden weiterhin genauso angezeigt wie zuvor. Das Badge ist eine zusätzliche Information, keine Ersetzung bestehender Funktionen.
Wie liest man das neue Badge richtig?
KurzantwortEin neutrales Badge mit einer niedrigen Millisekundenzahl bedeutet: Das Muster wurde schnell ausgewertet und zeigt keine bekannte Risikoform. Ein Badge in Warnfarbe bedeutet entweder eine ungewöhnlich lange gemessene Zeit für den aktuellen Test-Text, oder dass die Heuristik eine klassische Risikoform wie eine verschachtelte Wiederholung im Muster selbst erkannt hat — auch wenn die aktuelle Auswertung noch schnell war.
Wichtig ist der Unterschied zwischen den beiden Auslösern: Die gemessene Zeit hängt vom aktuellen Test-Text ab und kann sich bei jeder Änderung ändern, während die Formheuristik unabhängig davon prüft, wie das Muster selbst aufgebaut ist. Ein Muster wie (a+)+ kann deshalb bei einem kurzen Test-Text trotzdem als potenziell riskant markiert werden, obwohl die aktuell gemessene Zeit noch im niedrigen Millisekundenbereich liegt — die Warnung bezieht sich dann auf das grundsätzliche Verhalten des Musters, nicht nur auf den gerade sichtbaren Wert.
- Neutrales Badge, niedrige Zeit — unauffälliges Muster, keine erkannte Risikoform.
- Warnfarbe, Formheuristik ausgelöst — das Muster enthält eine klassische Risikostruktur wie
(a+)+, unabhängig vom aktuellen Test-Text.
- Warnfarbe, auffällig hohe Zeit — die konkrete Kombination aus Muster und aktuellem Test-Text hat spürbar länger gebraucht als üblich.
Für einen tieferen Einblick, warum verschachtelte Quantoren überhaupt zu diesem Verhalten führen können, lohnt sich unser ausführlicher Artikel zu katastrophalem Backtracking — genau dort hatten wir dieses Badge als denkbare künftige Ergänzung angekündigt, und jetzt ist es Realität.
Ein Beispiel in der Praxis
Angenommen, du tippst ins Musterfeld ein einfaches Muster wie \d{4}-\d{2}-\d{2} gegen einen kurzen Test-Text mit ein paar Datumsangaben — das Badge zeigt eine niedrige, unauffällige Zeit ohne Warnfarbe. Änderst du das Muster jetzt versuchsweise zu einer verschachtelten Form wie (\d+)+-\d{2}, springt das Badge in die Warnfarbe, sobald die Heuristik die verschachtelte Wiederholung erkennt — auch wenn dein aktueller Test-Text kurz und die gemessene Zeit dabei weiterhin niedrig ist. Das ist ein bewusster, vorausschauender Hinweis: Er warnt dich vor der Form des Musters, bevor ein längerer oder anders strukturierter Text sie tatsächlich zum Problem macht.
Beispiel (illustrativ): Angenommen dein Test-Text unter „Treffer” besteht nur aus drei kurzen Zeilen — dann bleibt die gemessene Zeit im Badge in aller Regel niedrig, selbst bei einem riskant geformten Muster. Die Formheuristik wird trotzdem auslösen, weil sie das Muster selbst prüft, nicht nur die aktuelle Laufzeit. Die genauen Millisekundenwerte hängen immer von Gerät, Browser und Auslastung ab und dienen hier nur der Veranschaulichung.
| Badge-Zustand | Auslöser | Was tun |
| Neutral | Niedrige Zeit, keine Risikoform erkannt | Kein Handlungsbedarf |
| Warnfarbe (Form) | Heuristik erkennt verschachtelte Wiederholung | Muster ggf. vereinfachen, schrittweise mit längerem Text prüfen |
| Warnfarbe (Zeit) | Auffällig hohe gemessene Ausführungszeit | Test-Text variieren, Ursache im Reiter „Erklären” isolieren |
Nutze bei einer Warnung den Reiter „Erklären”, um dein Muster Stück für Stück zu zerlegen und die verschachtelte Stelle gezielt zu isolieren, oder folge der schrittweisen Testmethode (Test-Text langsam verlängern) aus unserem vorherigen Artikel zu katastrophalem Backtracking. Sobald das Badge wieder neutral bleibt, kannst du im Reiter „Code generieren” beruhigt den passenden Code für JavaScript, Python, PHP oder Java übernehmen.
Häufig gestellte Fragen
Was zeigt das neue Laufzeit-Badge im Regex-Tester genau an?
Das Badge erscheint direkt neben der Trefferzahl im Reiter „Treffer” und zeigt die clientseitig gemessene Ausführungszeit deines Musters gegen den aktuellen Test-Text an, zum Beispiel „Ausgeführt in 3 ms”. Läuft die Auswertung ungewöhnlich lange oder erkennt die eingebaute Heuristik eine klassische Risikoform wie verschachtelte Quantoren, wechselt das Badge von neutral zu einer auffälligeren Warnfarbe.
Ist die Zeitmessung im Badge exakt und vergleichbar?
Die angezeigte Zeit ist eine grobe, clientseitige Messung im Browser des jeweiligen Geräts und hängt von Prozessor, Auslastung und Browser-Version ab — sie ist daher als Richtwert zu verstehen, nicht als exakte, geräteübergreifend vergleichbare Benchmark-Zahl. Für dieselbe Kombination aus Muster und Text kann der angezeigte Wert von Aufruf zu Aufruf leicht schwanken.
Wann schlägt die Heuristik-Warnung im Badge Alarm?
Die Heuristik prüft dein Muster auf klassische Risikoformen für katastrophales Backtracking, allen voran verschachtelte Quantoren wie (a+)+, bei denen eine Wiederholung eine andere Wiederholung mit überlappender Zeichenmenge umschließt. Erkennt sie eine solche Form, markiert sie das Badge unabhängig von der aktuell gemessenen Zeit als potenziell riskant, weil sich das Verhalten bei einem anderen Test-Text jederzeit ändern kann.
Ersetzt das Badge das manuelle, schrittweise Testen von Risikomustern?
Nein. Das Badge ist eine zusätzliche, sofort sichtbare Orientierungshilfe direkt beim Tippen, ersetzt aber keine bewusste Prüfung: Die Heuristik erkennt nur bekannte klassische Formen und kann sowohl false positives (harmlose, aber ähnlich aussehende Muster) als auch false negatives (andere, seltenere Risikoformen) übersehen. Bei einer Warnung lohnt sich weiterhin ein schrittweiser Test mit wachsender Textlänge, um das tatsächliche Verhalten zu bestätigen.
Muss ich etwas einstellen, damit das Badge angezeigt wird?
Nein, das Badge ist standardmäßig aktiv und erscheint automatisch im Reiter „Treffer”, sobald ein gültiges Muster gegen den Test-Text ausgewertet wurde — es sind keine zusätzlichen Einstellungen oder Flags nötig. Ist das Muster ungültig, erscheint stattdessen die gewohnte Fehlermeldung anstelle des Badges.