.aspx的正则表达式?修改查询字符串

时间:2011-01-22 13:58:09

标签: javascript jquery regex

我需要修改查询字符串

来自:http://server/test/default.aspx
致:http://server/test/default.aspx?videoplay=20

来自:http://server/test/default.aspx?toolPlay=1233136844420765
致:http://server/test/default.aspx?videoplay=20&toolPlay=1233136844420765

即。在查询字符串

之间添加videoplay=20&

通过jQuery。我尝试过.replace函数,但是有问题 - 我找不到正确的正则表达式。任何人都可以为“.aspx?”提供更好的方法或提供正则表达式。

2 个答案:

答案 0 :(得分:2)

嗯,我会做的是:

if (url.indexOf('?') != -1) { 
    url += "&videoplay=20";
} else {
    url += "?videoplay=20";
}

它不使用正则表达式,它处理url不包含查询字符串的情况。

答案 1 :(得分:1)

您需要同时转义.?,因为它们是特殊的正则表达式字符:

\.aspx\?

但是,您只需将&videoplay=20附加到网址末尾即可。效果将是相同的,除非服务器端代码正在查看查询字符串变量的索引(这是非常糟糕的做法)。