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

js
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