求个匹配链接的正则
淘宝链接,可能有N个参数,想把商品ID匹配出来,链接类似于:
1、http://item.taobao.com/item.htm?id=9523770399&ali_refid=a3_619362_1007:1102373933:7:46702465U84y78608587678s868v3I:7bcdc59fb0c21ce96e901436b439fd77&ali_trackid=1_7bcdc59fb0c21ce96e901436b439fd77
2、http://item.taobao.com/auction/item_detail.htm?item_num_id=9523770399&ali_refid=a3_619362_1007:1102373933:7:46702465U84y78608587678s868v3I:7bcdc59fb0c21ce96e901436b439fd77&ali_trackid=1_7bcdc59fb0c21ce96e901436b439fd77
3、http://item.taobao.com/item.htm?id=9523770399
4、http://item.taobao.com/auction/item_detail.htm?item_num_id=9523770399
以上4个全是一个商品的链接,我想把id=和item_num_id=后面的数字匹配出来。
1、http://item.taobao.com/item.htm?id=9523770399&ali_refid=a3_619362_1007:1102373933:7:46702465U84y78608587678s868v3I:7bcdc59fb0c21ce96e901436b439fd77&ali_trackid=1_7bcdc59fb0c21ce96e901436b439fd77
2、http://item.taobao.com/auction/item_detail.htm?item_num_id=9523770399&ali_refid=a3_619362_1007:1102373933:7:46702465U84y78608587678s868v3I:7bcdc59fb0c21ce96e901436b439fd77&ali_trackid=1_7bcdc59fb0c21ce96e901436b439fd77
3、http://item.taobao.com/item.htm?id=9523770399
4、http://item.taobao.com/auction/item_detail.htm?item_num_id=9523770399
以上4个全是一个商品的链接,我想把id=和item_num_id=后面的数字匹配出来。
作者: chinatowngame 发布时间: 2011-05-23
没有使用正则表达式,感觉这样的速度应该比较快,测试过函数是可以的
PHP code
嘿嘿。。。。小弟菜鸟一枚,头一次在csdn发言,规矩都不懂,见谅。
PHP code
function getid($url){ //手册说 explode()比正则表达式快 $geturl=explode("&", $url); //获取数组的第一个下标 $getitem=explode("=", $geturl[0]); //返回“=”后面的数值 return $getitem[1]; }
嘿嘿。。。。小弟菜鸟一枚,头一次在csdn发言,规矩都不懂,见谅。
作者: smileanyplace 发布时间: 2011-05-24
怪我没说清楚,之所以要用正则是因为id=9523770399这个参数不见得就一定是第一个参数,也就说id=9523770399不一定是跟在?号后面的,参数有可能是打乱的,而我只要取出id=后面的数字。
作者: chinatowngame 发布时间: 2011-05-24