【发布时间】:2023-09-21 20:55:02
【问题描述】:
我的朋友正试图完成他的计算机科学项目,但有一件事阻止他这样做:String 方法 replaceAll 似乎无法正常工作。他想删除所有新行或回车(\n 或 \r)的实例,并用几个空格替换它们。
for(int c = 0; c<bible.size(); c++){
bible.get(c).getForeign().replaceAll("\\n"," ");
bible.get(c).getForeign().replaceAll("\\r"," ");
}
代码
bible.get(c).getForeign()
返回从文本文件中读取的不同语言的字符串。这段代码有什么问题吗?它似乎没有用空格替换新行。 我检查了 String 类的 JavaDocumentation 和
replaceAll(String str, String replacement);
他们说反斜杠和美元符号可能会使返回的字符串有点不同。还有另一种方法可以做到这一点吗? 提前致谢。
【问题讨论】:
-
尝试使用
'\n'而不是“\\n” -
看看
replaceAll返回什么。 -
使用
"\n",而不是"\\n"。\n表示新线路。两个反斜杠代表“反斜杠”,因此“n”成为普通字符。