正则表达式如何匹配汉字?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了正则表达式如何匹配汉字?相关的知识,希望对你有一定的参考价值。
我想匹配图中的汉字,用的公式[\u4e00-\u9fa5],但匹配的确是部分英文和\,请问匹配汉字的公式如何写?
参考技术A 按.NET的标准,\w本来就是可以匹配:汉字,字母,数字,下划线。的所以一般\w可以满足需求了。
如果需要排除字母数字的话,可以这样:
(?![a-zA-Z0-9_])\w
>_>这样写估计效率不高
所以一般来说还是直接匹配指定的unicode码
\unnnn Unicode代码中十六进制代码为nnnn的字符
汉字(字符) [\u4e00-\u9fa5]
中文及全角标点符号(字符) [\u3000-\u301e\ufe10-\ufe19\ufe30-\ufe44\ufe50-\ufe6b\uff01-\uffee] 参考技术B 去掉 ^ 和 $ 试试 [\u4e00-\u9fa5]
\u数字,在Perl、PCRE中要改为:
[\x4e00-\x9fa5]本回答被提问者采纳
正则表达式
正则表达式 w s d
. 匹配除换行符以外的任意字符
w 匹配字母或数字或下划线或汉字 等价于 ‘[^A-Za-z0-9_]‘。
s 匹配任意的空白符
d 匹配数字
匹配单词的开始或结束
^ 匹配字符串的开始
$ 匹配字符串的结束
w能不能匹配汉字要视你的操作系统和你的应用环境而定
以上是关于正则表达式如何匹配汉字?的主要内容,如果未能解决你的问题,请参考以下文章