Text 🔒 Läuft im Browser — keine Daten werden gesendet

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.

/ /
Testtext
Treffer & Gruppen
Treffer erscheinen hier...

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

FlagWirkung
gFindet jeden Treffer, nicht nur den ersten; nötig, um alle zu ersetzen
iIgnoriert Groß- und Kleinschreibung
m^ und $ treffen an jedem Zeilenumbruch, nicht nur an den Enden des Textes
s. trifft auch einen Zeilenumbruch
uUnicode-Modus: ganze Codepoints statt UTF-16-Einheiten, dazu Property-Escapes wie \p{L}
ySticky: trifft nur dort, wo der vorige Treffer endete
dSpeichert 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

  • \w und \b kennen nur A bis Z, a bis z, 0 bis 9 und den Unterstrich, sehen also weder é noch persische Buchstaben. Mit dem Flag u trifft \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 g merkt sich lastIndex zwischen Aufrufen von test() und exec(), 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 mit g oder replaceAll().
  • In einer Ersetzung ist $1 die 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.

Passende Anleitungen