2012-02-12 66 views
1

百思买产品ID给出一个最佳购买网址:的Javascript正则表达式:从URL

http://www.bestbuy.com/site/Microsoft+-+Xbox+360+4GB+Console+-+Black/1162184.p?id=1218228678498&skuId=1162184 

我如何可以使用JavaScript来获取13位产品ID:

1218228678498 

回答

1

像这样的东西应该工作:/\?.*id=([0-9]{13})/

使用RegexPal来测试你的正则表达式:)

+0

完美,谢谢。 – jchavannes 2012-02-12 01:32:24

2

这似乎工作:

var url = "http://www.bestbuy.com/site/Microsoft+-+Xbox+360+4GB+Console+-+Black/1162184.p?id=1218228678498&skuId=1162184"; 

//look for fist question mark in the url, then for id property as a first capture group 
var regx = /\?.*?id=(.*?)&/g; 

//get first group match 
var id = regx.exec(url)[1]); 

此正则表达式将抓取任何URL HTTP查询参数从任何URL。