javascript匹配正则中文:var reg=/[\u4e00-\u9fa5]+/gi;
PHP中正则匹配中文:$reg='/[\x{4e00}-\x{9fa5}]/ui';
php匹配中文注意:
u:表示是以utf-8编码来匹配 (匹配中文一定要加u)
i:不区分大小写
\x: 表示十六进制
(1)javaScript匹配中文
(2)php匹配中文
正则匹配的两个常用函数:
非全局匹配(只会匹配一个)
参数说明:
$pattern : 正则表达式
$subject : 需要匹配的目标字符串
&$matches : 存放匹配的结果
函数返回值:
成功返回匹配的个数,永远返回1,因为是非全局
全局匹配(匹配所有),相当于js正则标识g(global)全局
函数返回值:
成功返回匹配的个数
代码如下:
<?php
$zh = '明天上课打球去吧';
$reg='/[\x{4e00}-\x{9fa5}]{2}/ui';
//非全局匹配(匹配到一个就会停止匹配)
$num1 = preg_match($reg,$zh,$matches1);
//全局匹配(匹配所有满足的结果)
$num2 = preg_match_all($reg,$zh,$matches2);
echo "<pre />";
var_dump($num1); // 1
var_dump($matches1);
echo "<hr />";
var_dump($num2);
var_dump($matches2);