This question already has answers here:
How can I get query string values in JavaScript?
                                
                                    (73个答案)
                                
                        
                                7年前关闭。
            
                    
RegExp专家,请注意我的电话!

这可能是非常简单的,但是我已经将自己描绘在一个心理角落。

取一个常规URL,在?之后分割,它给出一个像variable=val&interesting=something&notinteresting=somethingelse的字符串,我想提取interesting的值。

我感兴趣的变量名称可以是另一个变量的子字符串。
所以比赛应该是


字符串开头或“&”字符
随后是“ interesting =“
然后是我要捕获的字符串
后跟另一个“&”或字符串结尾


我尝试了一些方法
[\^&]interesting=(.*)[&$]
可是我什么都没有

更新资料
这将在每个get请求的Firefox插件中运行,这意味着jQuery不可用,并且如果可能的话,我想避免由于编写函数而造成的额外字符串操作。

对我来说,这就像一个通用的“用正则表达式提取字符串的一部分”,但也许我错了(RegEx显然不是我的强项)

最佳答案

简单的解决方案

var arr = "variable=val&interesting=something&notinteresting=somethingelse".split("&");
for(i in arr) {
var splits = arr[i].split("=");
if(splits[0]=="interesting") alert(splits[1]);
}


也单行匹配

"variable=val&interesting=something&notinteresting=somethingelse".match(/(?:[&]|^)interesting=((?:[^&]|$)+)/)[1]

09-10 12:03