The unicodeSets accessor property of RegExp instances returns whether or not the v flag is used with this regular expression.
The unicodeSets accessor property of RegExp instances returns whether or not the v flag is used with this regular expression.
RegExp.prototype.unicodeSets has the value true if the v flag was used; otherwise, false. The v flag is an "upgrade" to the u flag that enables more Unicode-related features. ("v" is the next letter after "u" in the alphabet.) Because u and v interpret the same regex in incompatible ways, using both flags results in a SyntaxError. With the v flag, you get all features mentioned in the u flag description, plus:
\p escape sequence can be additionally used to match properties of strings, instead of just characters.[^...] constructs a complement class instead of negating the match result, avoiding some confusing behaviors with case-insensitive matching. For more information, see Complement classes and case-insensitive matching.Some valid u-mode regexes become invalid in v-mode. Specifically, the character class syntax is different and some characters can no longer appear literally. For more information, see v-mode character class.
Note: The v mode does not interpret grapheme clusters as single characters; they are still multiple code points. For example, /[πΊπ³]/v is still able to match "πΊ".
The set accessor of unicodeSets is undefined. You cannot change this property directly.
const regex = /[\p{Script_Extensions=Greek}&&\p{Letter}]/v; console.log(regex.unicodeSets); // true
| Desktop | Mobile | Server | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | Deno | Node.js | ||
unicodeSets |
112 | 112 | 116 | 98 | 17 | 112 | 116 | 75 | 17 | 23.0 | 112 | 1.32 | 20.0.0 | |
RegExp.prototype.lastIndexRegExp.prototype.dotAllRegExp.prototype.globalRegExp.prototype.hasIndicesRegExp.prototype.ignoreCaseRegExp.prototype.multilineRegExp.prototype.sourceRegExp.prototype.stickyRegExp.prototype.unicode
Β© 2005β2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp/unicodeSets