我正在通过javascript捕获url参数,这些参数具有以下格式的能力:word1和word2。我目前只抓word1。我想检查在word1之后是否有空格和单词,如果为true,则捕获。
所以,如果word1%20&%20word2
,那么我将获取整个参数。我并没有&的每个实例,因为Url中有多个参数与此分开,例如param1=something¶m2=word1%20&%20word2
。我想捕获单个参数,因此在上一个示例中,我想在获取something
的参数时捕获param1
,然后在获取word1%20&%20word2
的参数时捕获param2
。
我当前的正则表达式是
new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)")
我该如何指定?
关键是将焦点放在下一个“ =”上,并同时剪切上一个“&”。
function getParam(url, name) {
return url.replace(new RegExp(".*[?&]" + name + "=([^=]*)(&[^&=]+=.*|$)"), '$1')
};