Unicode property escapes
正则表达式支持根据 Unicode 属性进行匹配,例如我们可以用它来匹配出表情、标点符号、字母 (甚至适用特定语言或文字) 等。同一符号可以拥有多种 Unicode 属性,属性则有 binary (“boolean-like”) 和 non-binary 之分。
// Non-binary 属性
\p{Unicode 属性值}
\p{Unicode 属性名=Unicode 属性值}
// Binary and non-binary 属性
\p{UnicodeBinary 属性名}
// \P 为 \p 取反
\P{Unicode 属性值}
\P{UnicodeBinary 属性名}
UnicodeBinary 属性名
Binary 属性名。E.g.: ASCII. Alpha, Math, Diacritic, Emoji, Hex_Digit, Math, White_space, 等。
Unicode 属性名
Non-binary 属性名:
Unicode 属性值
很多值有同名或简写 (e.g. 对应着 General_Category 属性名的属性值 Decimal_Number 可以写作 Nd, digit, 或 Decimal_Number). 大多数属性值的 Unicode 属性名 和等号可以省去。如果想明确某 Unicode 属性名,必须给出它的值。
在 ES2018 之前,JavaScript 没有强有效的方式用匹配出不同文字(如马其顿语,希腊语,Georgian 等) 或不同 属性名 (如 Emoji 等) 的字符。
如果你感觉文章不咋地
//(ㄒoㄒ)//
,就在评论处留言,作者继续改进;o_O???
如果你觉得该文章有一点点用处,可以给作者点个赞;\\*^o^*//
如果你想要和作者一起进步,可以微信扫描二维码,关注前端老L;~~~///(^v^)\\\~~~
谢谢各位读者们啦(^_^)∠※
!!!