我正在尝试使用{"count":0}
在Scala中测试matches
之类的字符串。由于整数部分可能不同,我试图做这样的事情:
assert(response.matches(s"^\\{\"count\":${notificationCount}\\}$"), s"Actual response: $response")
但是我在第二个$
符号中得到错误的字符串文字,表示正则表达式中字符串的结尾。
有什么建议吗?
答案 0 :(得分:3)
在Scala中使用字符串插值时,您可以使用双$
转义$$
:
val foo = 5
s"$foo${foo + 1}$$" //56$
您也可以考虑使用三引号原始字符串来帮助转义括号和引号:
s"""{"count":${foo}}$$""" //{"count":5}$