如何在''中为json使用GString替换

时间:2015-12-15 23:48:18

标签: json groovy gstring

我通常将''用于json,例如

'{"key":"value"}'

'''
  {"key":"value"}
'''

我在测试中有一个案例,我想用另一个字符串替换部分字符串,例如:

'{"key":"${value}"}'

有没有办法让这项工作?封闭的''正在关闭替换。

谢谢!

2 个答案:

答案 0 :(得分:3)

您可以使用"""用于扩展$变量的字符串,同时保留"

def value=123;
def temp="""{"key":"${value}"}"""
assert  temp== '{"key":"123"}'

以下是groovy中各种Stringy classes的链接及其比较。

答案 1 :(得分:0)

使用双引号声明GString并转义内部双引号将执行此操作:

"{\"key\":\"${value}\"}"

为了简洁起见,你也可以取消内部曲线:

"{\"key\":\"$value\"}"

有点笨重。这可以通过使用sprintf()来清理。