2016-10-05 287 views
0

我有如下网址:替换单斜杠双斜线和四个斜杠用双斜杠

http:////www.test.com//test 

我想,以取代单斜杠双斜线和四个斜杠用双斜杠,那就是输出类似:

http://www.test.com/test 
+0

['.replace(“//”,“/")'](http://ideone.com/G9oDVS)的作品。如果你打算进一步使用它,请不要忘记分配给一个变量('s = s.replace(“//”,“/”);') –

回答

0
String sURL="http:////www.test.com//test"; 
sURL=sURL.replace("////","/x/x/x/x"); 
sURL=sURL.replace("//","/"); 
sURL=sURL.replace("/x/x/x/x","//"); 

/x/x/x/x只是你保证不会在URL中自然会遇到的任意字符串。它“隐藏”通过sURL.replace("//","/");

被替换从四个斜线你可以尝试只:

String sURL="http:////www.test.com//test"; 
sURL=sURL.replace("//","/"); 

,但我不知道这是否会变成四个斜线到一个单一的一个,我不有方便的平台来测试。

编辑:添加sURL=使其“按原样”正常工作,而不是一个示例。我也是看到关于更换(有的帖子有它处理字符串而其他人只是单字符),我没有一个测试平台上replace可能需要replaceAll

+0

@PrestonM:它的问题是实际上标记为(Java),而不是为您回答的语言(JavaScript)。在对所有事情进行投票前,一些基本的事实核查不会受到伤害。 – SunKnight0

-1
String s1 = "http:////www.test.com//test."; 
s1 = s1.replaceAll("//", "/"); 
冲突的帖子

replaceAll方法适用于正则表达式,但最简单的正则表达式就是字符串本身 - 这里是“//”。

+0

试试吧。输出是http:/www.test.com/test –

+0

请取消downvote - 我测试和输出是正确的。 –

+0

我没有downvote它。 –