我需要提取ASIN号码从Amazon的URL(10位的字母数字SKU)。 该网址总是在这些格式:
http://www.amazon.com/gp/product/ASIN
http://www.amazon.com/gp/product/[text]/ASIN
http://www.amazon.com/o/ASIN
http://www.amazon.com/dp/ASIN
http://www.amazon.com/[text]/dp/ASIN
http://www.amazon.com/[text]/dp/[text]/ASIN
通常有多个目录,以及变量,在URL中的ASIN号码后。 这里是一个完整的URL为例:
http://www.amazon.com/Google-Nexus-Tablet-7-Inch-Black/dp/B00DVFLJDS/ref=sr_1_1?ie=UTF8&qid=1387937682&sr=8-1&keywords=nexus+7
我想,这也许可以用做preg_match()
但我很新的正则表达式,并没有一个线索制定的表达。
这是可以做到用preg_match()
如果不是这样,这将是解决这一问题的最佳方法?
更新:
我一直在对正则表达式阅读起来,并能修改答案时的工作ASIN是不是在URL字符串(而事实上并非如此)的末尾:
#\/([A-Za-z0-9]{10})#
我还做了它,这样必须有在比赛前一个斜杠。