介于选择之间的Javascript正则表达式

Javascript regex in between selection

本文关键字:之间 Javascript 正则表达式 选择 于选择      更新时间:2023-09-26

Guys在使用regex解码URL后,我如何提取内容http://example.com?hashval=1375336351_846b1b2aaf64b3ebe493a848e1f07585?以下是解码前的URL值。

value="netstreambasepath=http%3A%2F%2Fwww.example.com%2Fhome%2FPlayer.aspx%3Flpk4%3D122943%26playChapter%3DFalse&id=ucPlayerNew_obj&file=http%3A%2F%2Ffiles2.example.com%2Fsecure%2Fcontent%2F105371%2Ff4v_H264%2Fsample1.f4v%3Fhashval%3D1375336351_846b1b2aaf64b3ebe493a848e1f07585&cname=Up%20and%20Running%20with%20sample%20sample2&vname=Sample1%20Sample1&cId=105371&vId=122943&type=video&autostart=true&start=0&volume=95&controlbar.position=none&display.icons=false"

我当前解码url的脚本如下:

<script type="text/javascript">
function encode() {
    var obj = document.getElementById('dencoder');
    var unencoded = obj.value;
    obj.value = encodeURIComponent(unencoded).replace(/'/g,"%27").replace(/"/g,"%22");  
}
function decode() {
    var obj = document.getElementById('dencoder');
    var encoded = obj.value;
    obj.value = decodeURIComponent(encoded.replace(/'+/g,  " "));
}
</script>

感谢

如果要提取file参数:

> var value = "netstreambasepath=http%3A%2F%2Fwww.example.com%2F ..."
> decodeURIComponent(value.match('file=(.*?)($|&)')[1])
"http://files2.example.com/secure/content/105371/f4v_H264/sample1.f4v?hashval=1375336351_846b1b2aaf64b3ebe493a848e1f07585"