繁体   English   中英

正则表达式\ p {L}和\ p {N}

[英]Regular expression \p{L} and \p{N}

我是正则表达式的新手,并且给出了以下正则表达式:

(\p{L}|\p{N}|_|-|\.)*

我知道*的意思和| 意思是“或”而那个\\逃脱。

但我不知道\\p{L}\\p{N}是什么意思。 我搜索了Google,没有结果......

有人能帮我吗?

\\p{L}匹配“字母”类别中的单个代码点。
\\p{N}匹配任何脚本中的任何数字字符。

资料来源: regular-expressions.info

如果您打算使用正则表达式,我建议将该网站加入书签,这非常有用。

这些是Unicode属性快捷方式(Unicode字母为\\p{L} \\p{N} ,Unicode数字为\\p{N} )。 它们受.NET,Perl,Java,PCRE,XML,XPath,JGSoft,Ruby(1.9及更高版本)和PHP( 自5.1.0以来 )支持

无论如何,这是一个非常奇怪的正则表达式。 当字符类足够时,你不应该使用交替:

[\p{L}\p{N}_.-]*

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM