【发布时间】:2014-02-17 21:46:01
【问题描述】:
我需要在字符串中的每个给定字符后插入一个空格。
例如"abc.def..."
需要变成"abc. def. . . "
所以在这种情况下,给定的字符是点。
我在谷歌上的搜索没有找到这个问题的答案
我真的应该去学习一些严肃的正则表达式知识。
编辑:------------------------------ -------------
String test = "0:;1:;";
test.replaceAll( "\\:", ": " );
System.out.println(test);
// output: 0:;1:;
// so didnt do anything
解决方案:--------------------------------------------- ----------
String test = "0:;1:;";
**test =** test.replaceAll( "\\:", ": " );
System.out.println(test);
【问题讨论】:
-
你需要使用string.replace(".",".")
-
replaceAll() 将正则表达式作为第一个参数。 “:”在正则表达式中没有特殊含义,因此您不必转义它。删除双反斜杠后,您的代码应该可以正常工作了。
-
@tangens 不,遗憾的是没有
-
你必须使用 String.replaceAll() 的结果。字符串在 java 中是不可变的。
-
@tangens 是的,就是这样,谢谢