Java 移除或更换|&引用;逐字符串方法

Java 移除或更换|&引用;逐字符串方法,java,Java,我想使用String#replaceAll()方法删除字符“|”。 但第一个参数是公认的正则表达式元字符 我尝试了replaceAll(“\\\124;”,”)带有转义字符,但无法编译 有没有办法用Java删除或替换“|”字符?在使用replaceAll()时,需要对|进行双重转义,例如: myString.replaceAll("\\|", ""); 这是因为您的字符串实际上被解析了两次,首先作为文本字符串,然后作为正则表达式。因此,当您从“\\\\\\\”开始时,第一次解析会给您一个\\\

我想使用
String#replaceAll()
方法删除字符“|”。 但第一个参数是公认的正则表达式元字符

我尝试了
replaceAll(“\\\124;”,”)带有转义字符,但无法编译


有没有办法用Java删除或替换“|”字符?

在使用
replaceAll()
时,需要对
|
进行双重转义,例如:

myString.replaceAll("\\|", "");

这是因为您的字符串实际上被解析了两次,首先作为文本字符串,然后作为正则表达式。因此,当您从
“\\\\\\\”
开始时,第一次解析会给您一个
\\\\\\\\\\\\\\\\\\\\\\\\/code>的文本字符串,然后正则表达式解析器将其识别为
。这可能会让人有点困惑,直到你习惯为止。

此外,这也可以做到:

String test = "Hello | Hi | Test";
System.out.println(test.replace("|", ""));

这是一个有用的工具。不需要使用正则表达式。

正确答案是,不要使用(替换正则表达式),只需替换字符:

replace("|", "");
仅供参考,尽管方法名中没有“all”,但实际上is会替换指定字符的所有实例