以下给个例子(比如要取出浏览器的版本数字)
<?php
$userbrowser = "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 10.0; WOW64; Trident/7.0; .NET4.0C; .NET4.0E)";
if( preg_match("/MSIE \d{1,}\.\d{1,};/", $userbrowser, $match) ) {
var_dump($match);//此处获取的结果是 MSIE 10.0;
}
>
但是其实我们想要数据只是10 ,所以有没有什么办法可以一步到位呢.
有的如下 preg_mathc的正则改下既可如下:
preg_match("/MSIE (\d{1,})\.\d{1,};/", $userbrowser, $match) //注意到 (\d{1,} 外部比原先的多加了个(),如此就可以在$match结果获得10这个数字. 此种写法完整结果 是$match[0] 是 MSIE 10.0; $match[1] 是 10 .
所以如果说你要想那个结果上独立出来 在其外部加上括号既会$match结果依次得到.算是一个比较方便的小技巧