我有一个字符串@B1AdGODG7:Devrath%Dev\u00B6
我想用\u00B6替换
我试过了

String comments="@B1AdGODG7:Devrath%Dev\u00B6";
comments=comments.replaceAll("\u00B6","¶");

输出:@B1AdGODG7:Devrath%Dev\u00B6
所需输出:@B1AdGODG7:Devrath%Dev¶
replaceall不工作
如何使所需的输出
快照:
java - 如何替换字符串中的某些字符-LMLPHP

最佳答案

\u00B6是单一字元,Unicode码位为0xB6;写入\u00B6与写入的字义相同。
所以,你需要避开反斜杠:\\。此外,反斜杠在正则表达式中是特殊的,replaceall使用反斜杠,因此您需要再次对其进行转义—并且需要对转义进行转义:replaceAll("\\\\u00B6", "¶")
您还可以使用Pattern.quote进行第二级转义(regex的转义):replaceAll(Pattern.quote("\\u00B6"), "¶")

关于java - 如何替换字符串中的某些字符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53137512/

10-11 10:53