首頁  >  文章  >  後端開發  >  preg_match_all()正则取数据,为什么少了最后一个数字?

preg_match_all()正则取数据,为什么少了最后一个数字?

WBOY
WBOY原創
2016-06-23 14:25:031394瀏覽

preg_match_all('/id=(.*)[0-9]/', 'http://www.baidu.com/go.htm?spm=a1z10.1.w5003-4193336463.1.aoWyoL&id= 35468681941&scene=baidu_session', $id);

我想要拿到网址中的id值。
上面那样只能拿到3546868194,少了个1。这是为什么呢?


回复讨论(解决方案)

写成这样可以了,谢谢各位。
preg_match_all('/id\=(\d+)/',

额,我只知道怎么改,不知道为什么.....如果你只想匹配数字只要  /id=[0-9]*/  就好啦,  
/id=(.*)[0-9]/这个太乱了,连模式单元都用上了..

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn