Zum Inhalt springen

Regex testen — JavaScript Regex Tester online

Teste reguläre Ausdrücke in JavaScript online: Live-Hervorhebung, Gruppen und benannte Gruppen, alle Flags, Ersetzen-Vorschau. Langsame Muster stoppen nach 1 s.

Im Browser konvertieren · Ohne Registrierung

//g
Flags
Spickzettel
.
Beliebiges Zeichen außer Zeilenumbruch (mit dem Flag s auch diese)
\d \w \s
Ziffer, Wortzeichen [A-Za-z0-9_], Leerraum
\D \W \S
Keine Ziffer, kein Wortzeichen, kein Leerraum
[abc] [^abc]
Eines von a, b, c / jedes Zeichen außer a, b, c
[a-z]
Beliebiges Zeichen von a bis z
^ $
Anfang / Ende der Eingabe (mit dem Flag m jeder Zeile)
\b
Wortgrenze
* + ?
0 oder mehr, 1 oder mehr, 0 oder 1
{2,5}
2- bis 5-mal ({3} genau, {2,} mindestens)
*? +?
Genügsame Varianten: so wenig wie möglich
(abc)
Erfassende Gruppe
(?<name>abc)
Benannte erfassende Gruppe
(?:abc)
Gruppe ohne Erfassung
\1 \k<name>
Wiederholt, was Gruppe 1 / die benannte Gruppe getroffen hat
a|b
a oder b
(?=a) (?!a)
Gefolgt von a / nicht gefolgt von a
(?<=a) (?<!a)
Vorangestellt a / nicht vorangestellt a
\p{L}
Beliebiger Buchstabe in jeder Sprache (benötigt das Flag u oder v)

Nutzt die JavaScript-Regex-Engine (ECMAScript) deines Browsers, die Ergebnisse entsprechen also JavaScript-Code. Andere Engines wie PCRE, Python oder Java unterscheiden sich in einigen Syntaxdetails. Die Suche läuft in einem Hintergrund-Worker und wird nach 1 Sekunde gestoppt, um die Seite vor katastrophalem Backtracking zu schützen.

Anwendung

  1. Gib einen regulären Ausdruck ein und aktiviere die benötigten Flags (g findet alle Treffer).
  2. Füge den Testtext ein; Treffer werden hervorgehoben und mit Index und Gruppen aufgelistet.
  3. Schalte „Ersetzen“ ein, um eine Vorschau von String.replace mit Verweisen wie $1 oder $<name> zu sehen.

Beispiel

Muster: (?<user>\w+)@(\w+)\.com  Flags: g
Text: [email protected], [email protected]
Treffer: [email protected] (user = alice, 2 = example), [email protected]
Ersetzen durch $<user> at $2 → alice at example, bob at test

Details und Einschränkungen

Muster laufen mit der in deinen Browser eingebauten JavaScript-RegExp-Engine, daher verhalten sich Lookbehind, benannte Gruppen, Unicode-Property-Escapes und das Flag d genau wie in deinem Code. Das Flag v erscheint nur, wenn dein Browser es unterstützt.

Die Suche läuft in einem Web Worker auf deinem Gerät; es wird nichts hochgeladen. Ein Durchlauf wird nach etwa 1 Sekunde gestoppt, und es werden höchstens 1.000 Treffer aufgelistet.

FAQ

Warum findet mein Regex nur einen Treffer?

In JavaScript stoppt ein Regex ohne das Flag g (global) beim ersten Treffer. Aktiviere g, um alle Treffer zu finden; dieser Tester listet sie dann alle auf.

Was ist katastrophales Backtracking?

Manche Muster wie (a+)+$ oder (.*)* können bei Text, der fast passt, exponentiell lange brauchen. Dieses Tool führt den Regex in einem separaten Worker aus und stoppt ihn nach 1 Sekunde, damit die Seite reaktionsfähig bleibt und stattdessen einen Fehler zeigt.

Funktioniert ein hier getesteter Regex auch in Python oder PHP?

Oft, aber nicht immer. Dieser Tester nutzt die JavaScript-Engine. Python, PHP (PCRE) und Java haben andere Funktionen und Syntax, etwa bei benannten Gruppen, Lookbehind und Flags – prüfe Muster, die darauf angewiesen sind, also erneut.

Formatreferenzen

Tool-Seite aktualisiert: