我了错误的URL是这样的:http://www.abc.com/?abc&?as&?blah替换所有的比赛除了第一个
现在,我想匹配(和消除)在URL中的所有?
除了第一个,使URL干净。是否有可能在JavaScript中使用正则表达式?我尝试了积极的背后和其他方法,但它不适合我。
我了错误的URL是这样的:http://www.abc.com/?abc&?as&?blah替换所有的比赛除了第一个
现在,我想匹配(和消除)在URL中的所有?
除了第一个,使URL干净。是否有可能在JavaScript中使用正则表达式?我尝试了积极的背后和其他方法,但它不适合我。
也许不是最好的,但可能的解决方案:在第一个问号中将字符串切成两半,使用正则表达式删除第二个字符串中的所有问号,将它们粘合在一起。
var url = 'http://www.abc.com/?abc&?as&?blah';
var pos = url.search(/\?/) + 1;
var validUrl = url.substr(0, pos)
+ url.slice(pos).replace(/\?/g, '');
试试这个,
var str = "http://www.abc.com/?abc&?as&?blah";
str = str.replace(/(http:\/\/[^\/]+\/\?[^\?]+)\?([^\?]+)\?([^\?]+)/,"$1$2$3");