正确的PHP匹配UTF-8中文的正则表达式
我以前一直用这个代码如下:
preg_match('~[\x7f-\xff]+~is', $string, $tmp);
今天才发现,上面这个也会匹配到一些欧洲国家的字符
应该用下面这个,注意修正符 u
代码如下:
preg_match('~[\x{4e00}-\x{9fa5}]+~u', $string, $tmp);
代码如下:
preg_match('~[\x7f-\xff]+~is', $string, $tmp);
代码如下:
preg_match('~[\x{4e00}-\x{9fa5}]+~u', $string, $tmp);
PHP之友评论