正则expression式\ p {L}和\ p {N}
我是新来的正则expression式,并给予以下正则expression式:
(\p{L}|\p{N}|_|-|\.)*
我知道什么意思和| 意思是“或”,而\逃脱。
但是我不知道\p{L}
和\p{N}
是什么意思。 我search了Google,没有结果…
有人能帮我吗?
\p{L}
匹配类别“letter”中的单个代码点。
\p{N}
匹配任何脚本中的任何types的数字字符。
来源: regular-expressions.info
如果你打算使用正则expression式很多,我build议书签该网站,这是非常有用的。
这些是Unicode属性快捷方式(Unicode字母为\p{L}
\p{N}
,Unicode数字为\p{N}
)。 它们受.NET,Perl,Java,PCRE,XML,XPath,JGSoft,Ruby(1.9及更高版本)和PHP( 自5.1.0 )
无论如何,这是一个非常奇怪的正则expression式。 angular色类别足够时,你不应该使用replace:
[\p{L}\p{N}_.-]*