2014-10-09 111 views
2

我想删除URL中的多个顺序中的任何正斜杠。到目前为止:正则表达式用Javascript替换双斜杠

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

这仅适用于双斜线只有一次,但我想它删除任何数量的斜杠是一次以上,并做到在任何URL次数。我也试过

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

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

回答

2

与单一/更换的两个或两个以上/所有序列: temp.replace(/\/{2,}/g,'/');

1

您需要使用g(全球改性剂),以取代所有出现。使用以下两个或多个斜杠。

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

誓言......这么快。谢谢 – latvian 2014-10-09 02:02:40

0

对于URL的,我建议如下:

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