t1=preg_match($pattern,$subject,$m1)
t2 = preg_match_all($pattern,$subject,$m2)
结果是对应匹配次数
preg_match($pattern,$subject,$m1)$m1匹配一次
preg_match_all($pattern,$subject,$m2)$m2匹配所有结果
preg_match和preg_match_all的区别
$pattern='/[0-9]/'; $subject=dsv5f6v51sd1vf31vsf651sfv" $m1=$m2=array(); $t1=preg_match($pattern,$subject,$m1); $t2=preg_match_all($pattern,$subject<$m2); show($m1); echo '<hr/>'; show($m2); echo '<hr/>' show($t1.'||'.$t2);
preg_match只匹配一次 preg_match_all匹配多次.返回的是匹配次数
preg_match 和 preg_match_all的区别
用法一致;
preg_match :只能匹配到一次,返回0或者1
preg_match_all : 全局匹配,返回 0,1,2...取决于匹配的数据 参数
$pattern : 正则表达式
$subject : 要匹配的数据
array&$matches : 匹配完之后的数据,返回值为匹配到结果的次数 【preg_match中是可选参数】如:
$pattern="/[0-9]/"; $subject = 'adjf3274987jaidjf873rji23j'; $ma1 = $ma2 = array(); $t1 = preg_match($pattern,$subject,$ma1); //将匹配的结果放入$ma1中 $t2 = preg_match_all($pattern,$subject,$ma2);//将匹配的结果放入$ma2中 show($ma1); //只会匹配一个3 echo "<hr />"; show($ma2); //会匹配所有数字 echo '<hr />'; echo '显示返回值<br/>'; show($t1.'||'.$t2);$st1会返回1,$st2会返回7