如何用正则提取中文字符


1.首先得把字符串转成utf-8的格式:

$str = iconv(charset, 'utf-8', $str);//charset为你的字符原来的格式,包括:gb2312(简体中文),big5(繁体中文),utf8

2.使用preg_match_all进行提取:

preg_match_all('/[\x{4e00}-\x{9fa5}]+/u', $str, $r);
中文在utf8中代码是\u4e00-\u9fa5,但是是十六进制,所以转换成\x,这样得到的$r为二维数组,这个preg_match_all()函数第四个参数还有一个默认的PREG_PATTERN_ORDER,具体可以参考手册


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM