2016-05-16 86 views
-3

有人可以帮我用java的正则表达式来替换多个冒号吗?删除多个冒号

08::23:12 

应该

08:23:12 

08:::23::12 

应该是相同的。

感谢您的帮助

PS:感谢您的重复员额。环顾四周,发现真的复杂的解决方案,但是这一个工程:

String input = "14:::23::12"; 
System.out.println(input.replaceAll("::+", ":")); 
+0

你的代码,请。 – surajsn

回答

0

试试这个:

System.out.println("08:::23::12".replaceAll(":+", ":")); 
+0

它返回他要求的“08:23:12”。 –

+0

@ rock321987:Thnx,我没有试过。 –

0

您可以使用:{2,}

System.out.println("08:::23::12".replaceAll(":{2,}", ":")); 
System.out.println("08::23:12".replaceAll(":{2,}", ":")); 

我以前:{2,},以确保它仅替换出现两次或更多次的冒号。如果你使用:+它也将取代单一的冒号(这似乎是不必要的)

Demo Here