RegExp.prototype.unicodeSets
Die unicodeSets
Accessor-Eigenschaft von RegExp
-Instanzen gibt an, ob das v
-Flag mit diesem regulären Ausdruck verwendet wird oder nicht.
Beschreibung
RegExp.prototype.unicodeSets
hat den Wert true
, wenn das v
-Flag verwendet wurde; andernfalls false
. Das v
-Flag ist ein "Upgrade" des u
-Flags, das mehr Unicode-bezogene Funktionen ermöglicht. ("v" ist der nächste Buchstabe nach "u" im Alphabet.) Da u
und v
denselben regulären Ausdruck auf inkompatible Weise interpretieren, führt die Verwendung beider Flags zu einem SyntaxError
. Mit dem v
-Flag erhalten Sie alle in der u
-Flag-Beschreibung erwähnten Funktionen, plus:
- Die
\p
-Escape-Sequenz kann zusätzlich verwendet werden, um Eigenschaften von Strings anstatt nur von Zeichen zu matchen. - Die Zeichenklassen-Syntax wird aufgewertet, um Schnittmengen-, Vereinigungs- und Subtraktions-Syntaxen zu ermöglichen sowie mehrere Unicode-Zeichen zu matchen.
- Die Komplement-Syntax der Zeichenklasse
[^...]
konstruiert eine Komplementklasse anstatt das Match-Ergebnis zu negieren, um einige verwirrende Verhaltensweisen bei der Groß- und Kleinschreibung zu vermeiden. Weitere Informationen finden Sie unter Komplementklassen und unterscheidungslose Übereinstimmungen.
Einige gültige u
-Modus-Reguläre Ausdrücke werden im v
-Modus ungültig. Insbesondere ist die Syntax der Zeichenklassen unterschiedlich und einige Zeichen können nicht mehr buchstäblich erscheinen. Weitere Informationen finden Sie unter v
-Modus Zeichenklasse.
Hinweis:
Der v
-Modus interpretiert Graphem-Cluster nicht als einzelne Zeichen; sie sind weiterhin mehrere Codepunkte. Zum Beispiel kann /[🇺🇳]/v
weiterhin "🇺"
matchen.
Der Set-Accessor von unicodeSets
ist undefined
. Sie können diese Eigenschaft nicht direkt ändern.
Beispiele
Verwendung der unicodeSets-Eigenschaft
const regex = /[\p{Script_Extensions=Greek}&&\p{Letter}]/v;
console.log(regex.unicodeSets); // true
Spezifikationen
Specification |
---|
ECMAScript Language Specification # sec-get-regexp.prototype.unicodesets |
Browser-Kompatibilität
BCD tables only load in the browser
Siehe auch
RegExp.prototype.lastIndex
RegExp.prototype.dotAll
RegExp.prototype.global
RegExp.prototype.hasIndices
RegExp.prototype.ignoreCase
RegExp.prototype.multiline
RegExp.prototype.source
RegExp.prototype.sticky
RegExp.prototype.unicode
- RegExp v flag with set notation and properties of strings auf v8.dev (2022)