Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.
RegExp.prototype.unicodeSets
Baseline 2023Newly available
Since September 2023, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.
DieunicodeSets Zugriffseigenschaft vonRegExp-Instanzen gibt an, ob dasv-Flag mit diesem regulären Ausdruck verwendet wird oder nicht.
In diesem Artikel
Probieren Sie es aus
const regex1 = /[\p{Lowercase}&&\p{Script=Greek}]/;const regex2 = /[\p{Lowercase}&&\p{Script=Greek}]/v;console.log(regex1.unicodeSets);// Expected output: falseconsole.log(regex2.unicodeSets);// Expected output: trueBeschreibung
RegExp.prototype.unicodeSets hat den Werttrue, wenn dasv-Flag verwendet wurde; andernfallsfalse. Dasv-Flag ist ein "Upgrade" zumu-Flag, das mehr Unicode-bezogene Funktionen aktiviert. ("v" ist der nächste Buchstabe nach "u" im Alphabet.) Dau undv dasselbe Regex auf inkompatible Weise interpretieren, führt die Verwendung beider Flags zu einemSyntaxError. Mit demv-Flag erhalten Sie alle Funktionen, die in der Beschreibung desu-Flags erwähnt werden, plus:
- Die
\pEscape-Sequenz kann zusätzlich verwendet werden, um Eigenschaften von Zeichenfolgen zu matchen, anstatt nur Zeichen. - Die [Zeichenklassen]-Syntax(/de/docs/Web/JavaScript/Reference/Regular_expressions/Character_class) wird dahingehend erweitert, dass sie Schnittmengen-, Vereinigungs- und Subtraktionssyntaxe sowie das Matchen mehrerer Unicode-Zeichen ermöglicht.
- Die Komplement-Syntax von Zeichenklassen
[^...]erstellt eine Komplementklasse anstatt das Matchergebnis zu negieren, wodurch einige verwirrende Verhaltensweisen bei der Groß-/Kleinschreibung vermieden werden. Weitere Informationen finden Sie unterKomplementklassen und Groß-/Kleinschreibungsabgleich.
Einige gültigeu-Modus-Regexe werden imv-Modus ungültig. Insbesondere ist die Zeichenklassen-Syntax unterschiedlich und einige Zeichen können nicht mehr wörtlich erscheinen. Weitere Informationen finden Sie unterv-Modus Zeichenklasse.
Hinweis:Derv-Modus interpretiert keine Graphem-Cluster als einzelne Zeichen; sie sind nach wie vor mehrere Codepunkte. Zum Beispiel kann/[🇺🇳]/v immer noch"🇺" matchen.
Der Set-Zutritt vonunicodeSets istundefined. 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); // trueSpezifikationen
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-get-regexp.prototype.unicodesets> |
Browser-Kompatibilität
Siehe auch
RegExp.prototype.lastIndexRegExp.prototype.dotAllRegExp.prototype.globalRegExp.prototype.hasIndicesRegExp.prototype.ignoreCaseRegExp.prototype.multilineRegExp.prototype.sourceRegExp.prototype.stickyRegExp.prototype.unicode- RegExp v Flag mit Mengenotation und Eigenschaften von Zeichenketten auf v8.dev (2022)