我试图替换所有“|”通过“2”使用以下代码:

 String myString = "I want to change | with 2";
 String trimedString = myString.replaceAll("|", "2");
 System.out.print(trimedString);

我的预期输出是:
"I want to change | with 2"

但是实际输出是:
"2I2 2w2a2n2t2 2t2o2 2c2h2a2n2g2e2 2|2 2w2i2t2h2 222"

它在每个字符之前和之后添加了2。正确的做法是什么?

最佳答案

您必须在管道符号前面插入两个反斜杠,以便对其进行转义。

String myString = "I want to change | with 2";
String trimedString = myString.replaceAll("\\|", "2");
System.out.print(trimedString);

10-08 11:09