分享

正则表达式匹配中文字符

 黄三岁大爱人生 2018-02-23

老早以前,就搞过这块了,查过好多资料,不多当下又忘记了,而且当时总结的资料不知道跑哪里去了,再次总结下:

javascript使用:

[\u4e00-\u9fa5]

java中使用的也是:

[\u4e00-\u9fa5]


网上有人说:

现在网上大多数用于判断中文字符的是 \u4E00-\u9FA5 这个范围是只是“中日韩统一表意文字”这个区间,但这不是全部,如果要全部包含,则还要他们的扩展集、部首、象形字、注间字母等等

这个貌似是,我之前找的资料有点印象,不过都忘记了。。以后总结。。。


重点,我们需要的是PHP中,匹配中文:

PHP使用:

/[\x{4e00}-\x{9fa5}]/u --------- 注意模式修饰符 'u'

"u",手册中解释:

u (PCRE_UTF8) 此修正符打开一个与 perl 不兼容的附加功能。 模式字符串被认为是utf-8的. 这个修饰符 从 unix 版php 4.1.0 或更高,win32版 php 4.2.3 开始可用。 php 4.3.5 开始检查模式的 utf-8 合法性。有关于gb2312编码下的中文匹配:

if(!preg_match("/^[".chr(0xa1)."-".chr(0xff)."A-Za-z0-9_]+$/",$str)) //GB2312汉字字母数字下划线正则表达式 ---- 不一定准确,还是之前的印象,我当时也是查了好久,感觉这可能只是一部分。。。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多