我在c#中偶然发现了这个正则表达式我想移植到javascript,我不明白以下内容:
[-.\p{Lu}\p{Ll}0-9]+
我遇到困难的部分当然是\p{Lu}
。我访问的所有正则表达式网站都没有提到过这个修饰符。
有什么想法吗?
答案 0 :(得分:23)
这些被视为Unicode属性。
Unicode属性\p{L}
- \p{Letter}
的简写将匹配任何语言的任何类型的字母。因此,\p{Lu}
将匹配具有小写变体的大写字母。而且,相反的\p{Ll}
将匹配具有大写变体的小写字母。
简而言之,这将匹配任何语言的任何lowercase/uppercase that has a variant:
AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz