Java字符串替换(删除换行符,将$更改为\ $)

Alo*_*ark 6 java regex string

我有一个这样的字符串($字符总是被其他字符包围):

a$b
c$d
e$f
Run Code Online (Sandbox Code Playgroud)

我希望我的字符串方法放在\前面$并删除换行符:

a\$bc\$de\$f
Run Code Online (Sandbox Code Playgroud)

我尝试了这个,但它没有放置\角色:

 s=s.replaceAll("\n","").replaceAll("$", "\\$");
Run Code Online (Sandbox Code Playgroud)

War*_*ord 8

使用replace()方法代替replaceAll().正如米歇尔正确指出的那样,replaceAll()使用正则表达式会导致$字符出现问题,而replace()文字也是如此,这对于你的情况来说已经足够了.

  • 值得注意的是(因为`replaceAll()`使用正则表达式,OP不需要). (2认同)

Men*_*ena 5

$是java中Pattern的保留字符,它表示输入的行尾或结尾.

你还需要逃避替换......三次.

尝试 replaceAll("\\$", "\\\\\\$")