正则表达式用Javascript替换双斜杠

时间:2014-10-09 01:44:12

标签: javascript jquery regex

我想删除序列中不止一次的URL中的任何正斜杠。到目前为止:

var temp = "/path//to/middle//nowhre/avator2.jpg";
temp.replace(/\/\//,'/');

这仅适用于双斜杠而且只能使用一次,但是我希望它删除多次的任何数字斜杠,并为URL中的任何出现执行此操作。我也试过

temp.replace(/*[/+]*/,'/');

但这不起作用。任何帮助非常感谢。谢谢

4 个答案:

答案 0 :(得分:2)

用一个/替换两个或更多/的所有序列: temp.replace(/\/{2,}/g,'/');

答案 1 :(得分:1)

你应该有全球性的

temp.replace(/[\/]+/g, '/')

答案 2 :(得分:1)

您需要使用g(全局修饰符)来替换所有匹配项。将以下内容用于两个或更多斜杠。

var r = "/path//to/middle//nowhre/avator2.jpg".replace(/\/{2,}/g, '/');
console.log(r); //=> "/path/to/middle/nowhre/avator2.jpg"

答案 3 :(得分:0)

对于网址,我建议如下:

var s = "http://www.some-url.com//path//to";
var res = s.replace(/(https?:\/\/)|(\/)+/g, "$1$2");