Regex (Regular Expressions) sind Muster, mit denen du Strings durchsuchen, matchen, validieren oder ersetzen kannst.
const regex = /muster/;
const regex = new RegExp("muster");
regex.test(string)
Liefert true oder false, wenn der String zum Muster passt.
string.match(regex)
Gibt ein Array mit den Treffer(n) zurück oder null.
string.replace(regex, ersatz)
Ersetzt Treffer im String durch den ersatz-String.
string.search(regex)
Liefert den Index des ersten Treffers oder -1.
string.split(regex)
Teilt den String anhand des Musters in ein Array.
| Symbol | Bedeutung | Beispiel |
|-|-|-|
| . | Beliebiges Zeichen außer Zeilenumbruch | /h.llo/ matcht “hallo”, “hxllo” |
| * | 0 oder mehr Wiederholungen | /lo*/ matcht “l”, “lo”, “loo” |
| + | 1 oder mehr Wiederholungen | /lo+/ matcht “lo”, “loo”, … |
| ? | Optional (0 oder 1-mal) oder lazy Quantifier | /colou?r/ matcht “color” und “colour”
/lo+?/ (lazy) |
| ^ | Anfang des Strings | /^Hi/ matcht “Hi…” |
| $ | Ende des Strings | /Bye$/ matcht “…Bye” |
| \d | Ziffer (0-9) | /\d\d/ matcht “42” |
| \w | Wortzeichen (a-z, A-Z, 0-9, _) | /\w+/ matcht “hello_42” |
| \s | Whitespace-Zeichen (Leerzeichen, Tab, etc.) | /\s/ matcht ein Leerzeichen |
| [abc] | Zeichenklasse: a, b oder c | /[hc]at/matcht “hat” oder “cat” |
| [^abc] | Alle Zeichen außer a, b oder c | /[^0-9]/ matcht alles außer Ziffern |
| \b | Wortgrenze | /\bword\b/ findet “word” als ganzes Wort |
| \B | Keine Wortgrenze | /\Bend\B/ findet “end” innerhalb von Wörtern |
Gruppiert Teile des Musters, z.B. (abc) Ermöglicht späteres Referenzieren (Backreferencing).
(?:…) gruppiert, ohne den Inhalt zu speichern.
Das Pipe-Symbol | ermöglicht Alternativen, z.B. /foo|bar/ matcht “foo” oder “bar”.
Flags werden hinter dem Schrägstrich angegeben:
g (global): Alle Treffer finden.i (ignore case): Groß-/Kleinschreibung ignorieren.m (multiline): ^ und $ berücksichtigen Zeilenumbrüche.s (dotAll): . matcht auch Zeilenumbrüche.u (Unicode): Unicode-Support aktivieren.y (sticky): Sucht direkt ab der letzten Position.© unpacked - licence