我的问题很简单:
如何将“\”替换为“”???
我试过这个:
str.replaceAll("\\", "");
但我得到了例外
08-04 01:14:50.146: I/LOG(7091): java.util.regex.PatternSyntaxException: Syntax error U_REGEX_BAD_ESCAPE_SEQUENCE near index 1:
如果你不为此使用replaceAll(它需要一个正则表达式),它会更简单 - 只需使用replace(它需要一个纯字符串)。除非你真的需要正则表达式,否则不要使用正则表达式形式。它只会让事情变得更复杂。
不要忘记调用 replaceorreplaceAll是没有意义的,因为字符串是不可变的——你需要使用返回结果:
String replaced = str.replace("\\", "");
\\是\在字符串转义之后,这也是正则表达式中的转义字符尝试
String newStr = str.replaceAll("\\\\", "");
(不要忘记分配结果)
此外,如果您使用一些字符串作为需要正则表达式的输入,则使用 IMO 会更安全Pattern#quote:
String newStr = str.replaceAll(Pattern.quote("\\"), "");
你应该试试这个:
str.replaceAll("\\\\", "");
\必须在正则表达式中转义=>你应该写,\\每个\都必须在java中转义=>这就是为什么我们有4\