Groovy:在字符串中转义花括号

Fre*_*all 1 string groovy escaping curly-braces

我在groovy编码,我试图返回一些JavaScript.这是我需要返回一个包含大括号的字符串的问题,当然groovy将其视为错误.这是一个简单的例子:

${ i == 0 ? '{' : '}, {' }  
Run Code Online (Sandbox Code Playgroud)

我想要返回:
{或
},{
计划和简单.

${ i == 0 ? 'should be left brace' : "should be right brace coma left brace" }
Run Code Online (Sandbox Code Playgroud)

花括号可以转义,类似于转义引号吗?
我试过了:

${ i == 0 ? '\{' : '\}, \{' }    
Run Code Online (Sandbox Code Playgroud)

${ i == 0 ? '{{' : '}}, {{' }
Run Code Online (Sandbox Code Playgroud)

谢谢.

And*_*ess 5

我认为在GSP页面中出现问题.您可能得到的错误应该与此类似:

expecting ''', found '\n' @ line 57, column 80.
it) { return i == 0 ? '{' : ' })
Run Code Online (Sandbox Code Playgroud)

一种解决方案是对左右花括号使用Unicode表示:

${ i == 0 ? "\u007B" : "\u007D,\u007B" }
Run Code Online (Sandbox Code Playgroud)