Scala 将“替换为 \”

Scala replace " by \"

如何用\"替换双引号:

val s = """I am "groot"."""

所以输出将是 """I am \"groot\"."""

我尝试过但没有成功

s.replaceAll('"', '\"')

试试这个方法:

s.replaceAll("\"", "\\\"")

这是如何工作的:

s.replace(""""""", """\"""")

所以@Tanjin 提供了正确的解决方案。但是,您的解决方案不起作用的原因是这样。

s.replaceAll('"', '\"')

反斜杠在字符串和字符文字中具有特殊含义,因此 '\"' 仅编译为引号字符。 运行 在 REPL 中会显示这个

scala> '\"'
res2: Char = "

同时,使用三引号字符串会禁用此行为。

scala> """\""""
res3: String = \"