Java正在替换字符串中的\n

Java正在替换字符串中的\n,java,replace,Java,Replace,编辑: 不是一个重复的问题,至少与问题链接中的问题不同,他在不存储结果的情况下调用了string.replace(…)。我使用了replace而不是replaceALL,这允许使用正则表达式 我现在面临一个奇怪的问题。我正在尝试删除字符串中的所有空白。但不知怎么的,这对我不起作用。下面是我正在使用的it函数的屏幕截图,以及我从调试器获得的结果: 以下是我正在使用的函数: public static boolean contentCompare(String s1, String s2) {

编辑: 不是一个重复的问题,至少与问题链接中的问题不同,他在不存储结果的情况下调用了string.replace(…)。我使用了replace而不是replaceALL,这允许使用正则表达式

我现在面临一个奇怪的问题。我正在尝试删除字符串中的所有空白。但不知怎么的,这对我不起作用。下面是我正在使用的it函数的屏幕截图,以及我从调试器获得的结果:

以下是我正在使用的函数:

public static boolean contentCompare(String s1, String s2) {
    String s3 = s1.replace("\\s", "");
    s3 = s3.replace("\\\\n", "");
    s3 = s3.replace("\\n", "");
    return s1.equals(s2);
}
调试时,我得到s1和s3的以下值:

s1:\n\nWLS线程池\nWLS线程池\n\n客户端\n\nDBS连接池\nDBS连接池\n\nDBS进程池\nDBS进程池\n\nWLS CPU\nWLS CPU\n\nDBS PQ\nDBS CPU\nDBS CPU\n\nDBS-I/O\n\n\n

s3:\n\nWLS线程池\nWLS线程池\n\n客户端\n\nDBS连接池\nDBS连接池\n\nDBS进程池\nDBS进程池\n\nWLS CPU\nWLS CPU\n\nDBS PQ\nDBS CPU\nDBS CPU\n\nDBS-I/O\n\n\n


知道为什么不删除
\n
吗?

这应该可以解决问题:

s3 = s3.replace("\n", "");

这应该可以做到:

s3 = s3.replace("\n", "");

这应该可以做到:

s3 = s3.replace("\n", "");

这应该可以做到:

s3 = s3.replace("\n", "");
使用

而不是

s3.replace("\n","");
使用

而不是

s3.replace("\n","");
使用

而不是

s3.replace("\n","");
使用

而不是

s3.replace("\n","");
试试下面的代码

s3= s3.replaceAll("\\s+","")
试试下面的代码

s3= s3.replaceAll("\\s+","")
试试下面的代码

s3= s3.replaceAll("\\s+","")
试试下面的代码

s3= s3.replaceAll("\\s+","")
用指定的文字替换序列替换与文字目标序列匹配的此字符串的每个子字符串

您需要将
\n
替换为“”即空白

s3 = s3.replace("\n", "");
用指定的文字替换序列替换与文字目标序列匹配的此字符串的每个子字符串

您需要将
\n
替换为“”即空白

s3 = s3.replace("\n", "");
用指定的文字替换序列替换与文字目标序列匹配的此字符串的每个子字符串

您需要将
\n
替换为“”即空白

s3 = s3.replace("\n", "");
用指定的文字替换序列替换与文字目标序列匹配的此字符串的每个子字符串

您需要将
\n
替换为“”即空白

s3 = s3.replace("\n", "");


该死的,现在我觉得自己很蠢:-)这行得通。我是否现在删除了我的问题/将其标记为已解决?我是一个新的张贴so@SimonEismann只需将响应标记为acceptedit说我仍然需要等待10分钟才能接受它:-(该死的,现在我觉得自己很愚蠢:-)这很有效。我是否现在删除了我的问题/将其标记为已解决?我是一个新的张贴so@SimonEismann只需将响应标记为acceptedit说我仍然需要等待10分钟才能接受它:-(该死的,现在我觉得自己很愚蠢:-)这很有效。我是否现在删除了我的问题/将其标记为已解决?我是一个新的张贴so@SimonEismann只需将响应标记为acceptedit说我仍然需要等待10分钟才能接受它:-(该死的,现在我觉得自己很愚蠢:-)这很有效。我是否现在删除了我的问题/将其标记为已解决?我是一个新的张贴so@SimonEismann只需将响应标记为acceptedit说我仍然需要等待10分钟才能接受它:-(您已经注意到您的return语句
return s1.equals(s2)
忽略
s3
?嗯,我的问题不是那个问题的重复,另一个家伙的问题是他不知道replace不会更改字符串本身,而是返回结果。我的问题是更加愚蠢:-p你注意到你的return语句
返回s1.equals(s2)
忽略
s3
?嗯,我的问题不是那个问题的重复,另一个家伙的问题是他不知道replace不会更改字符串本身,而是返回结果。我的问题是更加愚蠢:-p你注意到你的return语句
返回s1.equals(s2)
忽略
s3
?嗯,我的问题不是那个问题的重复,另一个家伙的问题是他不知道replace不会更改字符串本身,而是返回结果。我的问题是更加愚蠢:-p你注意到你的return语句
返回s1.equals(s2)
忽略
s3
?嗯,我的问题不是那个问题的重复,另一个家伙的问题是他不知道replace不会更改字符串本身,而是返回结果。我的问题是更加愚蠢:-PReplace也很好:“用指定的文字替换序列替换与文字目标序列匹配的此字符串的每个子字符串。”,java.lang.CharSequence)因为
\n
只是一个字符,所以可以使用
\replace
。不要对这一点感到困惑“。这并不意味着,这将替换所有出现的情况(其他也会这样做),它只是意味着,此方法可以替换多个字符串
#replaceAll
允许使用正则表达式,
#replace
不允许使用正则表达式。这修复了我遇到的另一个问题,我的第一个replace(\s)实际上没有做任何事情。使用replaceAll(“\s”,”)可以很好地解决我的问题replace也很好:“用指定的文字替换序列替换与文字目标序列匹配的字符串的每个子字符串。”,java.lang.CharSequence)因为
\n
只是一个字符,所以可以使用
\replace
。不要对这个
“全部”
感到困惑。这并不意味着,这将替换所有出现的情况(其他也会这样做),它只是意味着,此方法可以替换多个字符串
#replaceAll
允许使用正则表达式,
#replace
不允许使用正则表达式。这修复了我遇到的另一个问题,我的第一个replace(\s)实际上没有做任何事情。使用replaceAll(“\s”,”)可以正确地解决我的问题replace也很好:“用指定的文字替换序列替换与文字目标序列匹配的字符串的每个子字符串。”,java.lang.CharSequence),因为
\n