java replaceAll不适用于\n字符

use*_*289 11 java regex string replaceall

我有一个这样的字符串:John \n Barber现在我想用实际的新行字符替换\n,这样它就会变成

John

理发师

这是我的代码

replaceAll("\\n", "\n");
Run Code Online (Sandbox Code Playgroud)

但它不起作用,并给我相同的字符串 John \n Barber

Avi*_*Avi 24

你需要这样做:

replaceAll("\\\\n", "\n");
Run Code Online (Sandbox Code Playgroud)

replaceAll方法需要在其第一个参数中使用正则表达式.\在java字符串中传递2时,实际上传递了一个.问题是\在正则表达式中也是一个转义字符,因此正则表达式\n是实际的,\\n所以你需要多加\两次.