删除或替换"|" 字符串方法

taj*_*iro 2 java

我想删除字符"|" 通过使用String#replaceAll()方法.但第一个参数是识别正则表达式元字符.

我尝试replaceAll("\|", "");使用转义字符,但无法编译.

有没有办法删除或替换"|" Java的角色?

aro*_*oth 8

您需要|在使用时双重逃避replaceAll(),例如:

myString.replaceAll("\\|", "");
Run Code Online (Sandbox Code Playgroud)

这是因为您的字符串实际上被解析了两次,首先是文字字符串,然后是正则表达式.因此,当您从"\\|"第一个解析开始时,会为您提供一个文本字符串\|,然后正则表达式解析器将其识别为|.在你习惯它之前,这可能有点令人困惑.