Zeichenklassen-Escape: \d, \D, \w, \W, \s, \S
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Ein Zeichenklassen-Escape ist eine Escape-Sequenz, die eine Gruppe von Zeichen darstellt.
Syntax
\d, \D
\s, \S
\w, \W
Note:
,
ist nicht Teil der Syntax.
Beschreibung
Im Gegensatz zu Zeichen-Escapes stellen Zeichenklassen-Escapes eine vordefinierte Gruppe von Zeichen dar, ähnlich einer Zeichenklasse. Die folgenden Zeichenklassen werden unterstützt:
\d
-
Passt auf jedes Ziffernzeichen. Entspricht
[0-9]
. \w
-
Passt auf jedes Wortzeichen, wobei ein Wortzeichen Buchstaben (A–Z, a–z), Zahlen (0–9) und Unterstrich (_) umfasst. Wenn der Regex Unicode-kompatibel ist und das
i
Flag gesetzt ist, passt es auch auf andere Unicode-Zeichen, die durch Case Folding zu einem der oben genannten Zeichen kanonisiert werden. \s
-
Passt auf jedes Leerzeichen oder Zeilenabschlusszeichen.
Die Großbuchstaben-Formen \D
, \W
und \S
erzeugen komplementäre Zeichenklassen zu \d
, \w
und \s
. Sie passen auf jedes Zeichen, das nicht in der durch die Kleinbuchstaben-Form beschriebenen Gruppe enthalten ist.
Unicode-Zeichenklassen-Escapes beginnen mit \p
und \P
, werden aber nur in Unicode-kompatiblem Modus unterstützt. Im Unicode-inkompatiblen Modus sind sie Identitäts-Escapes für das p
oder P
Zeichen.
Zeichenklassen-Escapes können in Zeichenklassen verwendet werden. Sie können jedoch nicht als Grenzen von Zeichenbereichen verwendet werden, was nur als veraltete Syntax für Web-Kompatibilität erlaubt ist und nicht darauf verlassen werden sollte.
Beispiele
Aufteilen nach Leerzeichen
Das folgende Beispiel teilt einen String in ein Array von Wörtern auf und unterstützt dabei alle Arten von Leerzeichentrennern:
function splitWords(str) {
return str.split(/\s+/);
}
splitWords(`Look at the stars
Look how they\tshine for you`);
// ['Look', 'at', 'the', 'stars', 'Look', 'how', 'they', 'shine', 'for', 'you']
Spezifikationen
Specification |
---|
ECMAScript Language Specification # prod-CharacterClassEscape |
Browser-Kompatibilität
BCD tables only load in the browser