用正则表达式获取url变量

Pat*_*que 6 javascript regex

我有以下网址

http://www.test.info/link/?url=http://www.site2.com
Run Code Online (Sandbox Code Playgroud)

如何在javascript中使用正则表达式获取url参数的值?

谢谢

And*_*odt 12

function extractUrlValue(key, url)
{
    if (typeof(url) === 'undefined')
        url = window.location.href;
    var match = url.match('[?&]' + key + '=([^&]+)');
    return match ? match[1] : null;
}
Run Code Online (Sandbox Code Playgroud)

如果您尝试匹配访问者当前所在页面中的"网址",则可以使用以下方法:

var value = extractUrlValue('url');
Run Code Online (Sandbox Code Playgroud)

否则,您可以传递自定义网址,例如

var value = extractUrlValue('url', 'http://www.test.info/link/?url=http://www.site2.com
Run Code Online (Sandbox Code Playgroud)


Jor*_*dan 11

查看http://rubular.com来测试正则表达式:

url.match(/url=([^&]+)/)[1]
Run Code Online (Sandbox Code Playgroud)