我是正则表达式的新手,并获得了以下正则表达式:
(\p{L}|\p{N}|_|-|\.)*
我知道 * 是什么意思和 | 表示“或”,而 \ 转义。
但我不知道什么\p{L}
和\p{N}
意味着什么。我用谷歌搜索了它,没有结果......
有人能帮我吗?
我是正则表达式的新手,并获得了以下正则表达式:
(\p{L}|\p{N}|_|-|\.)*
我知道 * 是什么意思和 | 表示“或”,而 \ 转义。
但我不知道什么\p{L}
和\p{N}
意味着什么。我用谷歌搜索了它,没有结果......
有人能帮我吗?
这些是 Unicode 属性快捷方式(\p{L}
用于 Unicode 字母,\p{N}
用于 Unicode 数字)。.NET、Perl、Java、PCRE、XML、XPath、JGSoft、Ruby(1.9 及更高版本)和 PHP(自 5.1.0 起)支持它们
无论如何,这是一个非常奇怪的正则表达式。当字符类就足够时,您不应该使用交替:
[\p{L}\p{N}_.-]*