问题实际上是您需要在替换字符串中双转义 反斜杠
。您会看到,
"\/"(我确定您知道)表示替换字符串是
/,并且(您可能不知道)替换字符串
/实际上只是插入
/,因为Java很奇怪,并且在替换字符串中具有特殊含义。(据推测,这
$将是字面上的美元符号,但我认为真正的原因是他们想与人打交道。其他语言则不是这样做的。)因此,您必须编写以下两种方法:
"Hello/You/There".replaceAll("/", "\\/");要么:
"Hello/You/There".replaceAll("/", Matcher.quoteReplacement("\/"));(使用
java.util.regex.Matcher.quoteReplacement(String)。)



