SCALA替换为$

时间:2017-12-03 16:48:12

标签: scala

我想用文字 $替换一封信。我试过了:

var s = string.replaceAll("Register","$10")

我希望将此文Register saved更改为:$10 saved

非法组引用是我得到的错误。

2 个答案:

答案 0 :(得分:1)

如果你查看replaceAll的scaladoc,你会发现它需要一个正则表达式字符串作为参数。使用$逃离\,或使用replaceAllLiterally

答案 1 :(得分:1)

replaceAll使用正则表达式查找匹配项。在替换字符串$中是一个特殊字符,它引用匹配字符串中的特定捕获组。您没有捕获组,因此这是一个错误。这不是你想要的,因为你想要文字文本"$10"

Use替换instead of replaceAll`。它只是直接替换字符串。