答案 0 :(得分:1)
使用vid =(\ d +)获取ID数量,请参阅regex
答案 1 :(得分:0)
在这个地方试试你的正则表达式...... https://regex101.com/r/dX3hD4/1
答案 2 :(得分:0)
你写的正则表达式不起作用,因为你在返回值中包含了字符& vid =。要确保正则表达式引擎检查字符串& vid =但未在结果中包含它,您将需要使用lookbehind:
(?<=&vid=)([^&\r\n]+)
我们使用积极的lookbehind来找到&vid=
,然后抓住从那一点到下一个&amp;标志或行尾。
对于第二个请求,如果您希望验证vid
的内容是否为有效号码,则需要指定&vid=
后面的所有字符都应为数字,并且还包含一个正面的前瞻确保数字后面的下一个字符是&amp;标志。然后相应的正则表达式变为:
(?<=&vid=)([^\D]+)(?=&)
答案 3 :(得分:0)
这里的诀窍是匹配两种感兴趣的模式 -
你捕获的任何东西都是你所追求的。
因此使用此:
"http://gorid.com/api.jsp?acs=123&vid=432&skey=asdasd-asdas-adsasd".match("vid=([^;]*)&")[1]
我们正在访问匹配对象的第二个元素,因为它包含值。
答案 4 :(得分:0)
在JS / PHP类型的环境中,你可以匹配这样的东西,你可以在vid=
和下面的&
之间找到任何字母数字:
vv = str.match(/vid=(.+?)&/)[1];
如果值始终为数字,请将(.+?)
替换为(\d+?)