正则表达式匹配中文字符

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

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汉字字母数字下划线正则表达式 ---- 不一定准确,还是之前的印象,我当时也是查了好久,感觉这可能只是一部分。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值