JavaScript Regex Tester
Testen Sie ein Muster mit der RegExp-Engine, auf der Ihr JavaScript läuft: Was hier trifft, trifft auch in Ihrem Code.
JavaScript Regex Tester
Ein regulärer Ausdruck, der in einer Sprache funktioniert, kann in einer anderen scheitern. Am sichersten testen Sie ein JavaScript-Muster deshalb in einer JavaScript-Engine. Diese Seite öffnet den Regex-Tester mit einem Beispiel, das benannte Gruppen nutzt: das Muster (?<year>\d{4})-(?<month>\d{2})-(?<day>\d{2}), zwei Datumsangaben im Testtext und die Ersetzung $<day>/$<month>/$<year>, die sie in Tag, Monat und Jahr umschreibt.
Die Engine ist die Ihres Browsers
Nichts wird an einen Server geschickt: Das Muster wird mit new RegExp() in Ihrem eigenen Tab kompiliert. Das heißt V8 in Chrome und Edge, dieselbe Engine wie in Node.js, SpiderMonkey in Firefox und JavaScriptCore in Safari. Alle drei setzen dieselben ECMAScript-Regeln um, also verhält sich ein Muster, das hier funktioniert, in Ihrem Frontend- oder Node-Code auf einer aktuellen Version genauso.
Die Flags
| Flag | Wirkung |
|---|---|
g | Findet jeden Treffer, nicht nur den ersten; nötig, um alle zu ersetzen |
i | Ignoriert Groß- und Kleinschreibung |
m | ^ und $ treffen an jedem Zeilenumbruch, nicht nur an den Enden des Textes |
s | . trifft auch einen Zeilenumbruch |
u | Unicode-Modus: ganze Codepoints statt UTF-16-Einheiten, dazu Property-Escapes wie \p{L} |
y | Sticky: trifft nur dort, wo der vorige Treffer endete |
d | Speichert Anfang und Ende jeder Gruppe, für Code, der match.indices liest |
Jeder andere Buchstabe wird entfernt, bevor das Muster die Engine erreicht, auch das neuere Flag v. Ein doppelt eingegebener Buchstabe wie gg ist ein Fehler, und das Tool zeigt die Meldung der Engine selbst an.
Typische Stolperfallen in JavaScript
\wund\bkennen nur A bis Z, a bis z, 0 bis 9 und den Unterstrich, sehen also wederénoch persische Buchstaben. Mit dem Flagutrifft\p{L}einen Buchstaben in jedem Alphabet.- In einem String muss jeder Backslash verdoppelt werden:
new RegExp("\\d+")ist dasselbe Muster wie das Literal/\d+/. Dieser Tester nimmt das Muster so, wie Sie es zwischen die Schrägstriche schreiben. - Eine Regex mit dem Flag
gmerkt sichlastIndexzwischen Aufrufen vontest()undexec(), daher kann derselbe String zweimal getestet erst true und dann false liefern. replace()mit einem einfachen String als Muster ändert nur das erste Vorkommen; nehmen Sie eine Regex mitgoderreplaceAll().- In einer Ersetzung ist
$1die erste Gruppe,$<name>eine benannte,$&der ganze Treffer und$$ein wörtliches Dollarzeichen.
Ersetzen mit benannten Gruppen
Das Ersetzungsfeld folgt denselben Regeln wie String.prototype.replace(). Mit dem Beispielmuster macht $<day>/$<month>/$<year> aus 2026-09-24 den Wert 24/09/2026. Benannte Gruppen halten ein Muster auch Monate später lesbar: match.groups.year sagt mehr als match[1].
Verwandte Seiten
Starten Sie mit einem fertigen Muster über die URL-Regex, oder entfernen Sie doppelte Wörter mit Suchen und Ersetzen per Regex. Für E-Mail-Adressen sowie für Zahlen, Telefonnummern und IP-Adressen gehen der Leitfaden zu Regex für E-Mail-Adressen und der Leitfaden zu Mustern für Zahlen, Telefonnummern und IP-Adressen ins Detail.