我有这些可能的字符串:
&modelIds=340&makeIds=4307,6548&stuffId=340
OR
&modelIds=340&makeIds=4307,6548
我试图提取makeIds的数组或更简单的makeIds字符串(在这种情况下为“ 4307,6548”),稍后我将用逗号将它们分开。
我已经在第一种情况下使用了它,但在第二种情况下却没有使用:
var stringTest = "&modelIds=340&makeIds=4307,6548&stuffId=340"
var matches = stringTest.match(/makeIds=(.*)&\b/)
返回:
["makeIds=4307,2342&", "4307,2342"]
,所以我可以做:var ids = matches[1];
不幸的是,这不适用于第二个字符串。我已经尝试过
/makeIds=(.*)?(&|$)\b/
,但这也不起作用。 最佳答案
您必须嵌套在?
量词中。这是一个可选的比赛。您的意思是使您的.*
懒惰:
/static_keywords=(.*?)(&|$)\b/