获取此URL的特定部分的ruby正则表达式是什么?

fra*_*o86 1 ruby regex string url

我正试图获得一些亚马逊物品的ASIN.我找到了一个模式:ASIN总是在"/ dp /"之后.如何从该字符串中提取ASIN(B003CP0V6S)?我正在使用红宝石

url = "http://www.amazon.it/Calvin-Klein-Deluxe-K0S21120--Orologio/dp/B003CP0V6S/ref=lp_1597641031_1_8?ie=UTF8&qid=1349983393&sr=1-8"
Run Code Online (Sandbox Code Playgroud)

pje*_*pje 5

str = "http://www.amazon.it/Calvin-Klein-Deluxe-K0S21120--Orologio/dp/B003CP0V6S/ref=lp_1597641031_1_8?ie=UTF8&qid=1349983393&sr=1-8"
(match = str.match(/\/dp\/([^\/]*)/)) && match[1]
# => "B003CP0V6S"
Run Code Online (Sandbox Code Playgroud)

  • 那是因为你剪切并粘贴代码而没有得到`(匹配=`从头开始. (3认同)