如何用定界符值替换字符串中的空格和\ r?
String oldDelimiter = " ";
String newDelimiter = "o";
String fileContent = "try some **random** %!(chars)!% ##\r" +
"or line break$@ \r" +
":(";
fileContent = fileContent.replaceAll("[" + oldDelimiter + "]+", newDelimiter);
fileContent = fileContent.replaceAll("\r", newDelimiter);
当前输出:
tryosomeo**random**o%!(chars)!%o##oorolineobreak$@oo:(
所需的输出:
tryosomeo**random**o%!(chars)!%o##oorolineobreak$@o:(
请注意,在
o
符号后面的字符串末尾有多余的字母@
。更新:仅当存在
space
或\r
时,才应替换为o。但是,如果space
和\r
彼此相邻,则只能替换为一个o
分隔符。 最佳答案
就像安德烈亚斯(Andreas)所说的那样,使用“ [\ r]”将所有的\ r和“”替换为空格。
fileContent = fileContent.replaceAll("[ \r]+", "o");