final String remove = " " // tab is 3 spaces
while (lineOfText != null)
{
if (lineOfText.contains(remove))
{
lineOfText = " ";
}
outputFile.println(lineOfText);
lineOfText = inputFile.readLine();
}
我尝试运行此功能,但它不会用一个空格替换选项卡。有解决方案吗
答案 0 :(得分:5)
Tab不是三个空格。这是一个特殊的角色,你通过逃脱获得,特别是final String remove = "\t";
和
if (lineOfText.contains(remove))
lineOfText = lineOfText.replaceAll(remove, " ");
}
或删除if
(因为replaceAll
不需要它),例如
lineOfText = lineOfText.replaceAll(remove, " ");
答案 1 :(得分:0)
您可以简单地使用此正则表达式将String中的任何类型的转义符(包括制表符,换行符,空格等)替换为所需的转义符:
lineOfText.replaceAll("\\s", " ");
在此示例中,在名为 lineOfText 的字符串中,我们用空格替换了所有转义符。