我有一个字符串@B1AdGODG7:Devrath%Dev\u00B6
我想用\u00B6
替换¶
我试过了
String comments="@B1AdGODG7:Devrath%Dev\u00B6";
comments=comments.replaceAll("\u00B6","¶");
输出:
@B1AdGODG7:Devrath%Dev\u00B6
所需输出:
@B1AdGODG7:Devrath%Dev¶
replaceall不工作
如何使所需的输出
快照:
最佳答案
\u00B6
是单一字元,Unicode码位为0xB6;写入\u00B6
与写入的字义相同。
所以,你需要避开反斜杠:\\
。此外,反斜杠在正则表达式中是特殊的,replaceall使用反斜杠,因此您需要再次对其进行转义—并且需要对转义进行转义:replaceAll("\\\\u00B6", "¶")
。
您还可以使用Pattern.quote
进行第二级转义(regex的转义):replaceAll(Pattern.quote("\\u00B6"), "¶")
。
关于java - 如何替换字符串中的某些字符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53137512/