在Xtend模板表达式中转义单引号

时间:2016-06-02 09:59:19

标签: syntax escaping syntax-error xtend

我有一个非常简单的问题,但无法通过Google搜索找出来,请帮忙。

我想使用包含模板表达式的以下简单Xtend方法生成此字符串'\u0000'(请注意它周围的简单引号!):

def String makeDefaultChar()
{
   ''''\u0000''''
}

然而,这不被接受为正确的语法(可能是因为四个''''。这个用例是否存在转义字符或者什么是正确的语法?

提前谢谢!

P.S。

当然我可以使用像这个"'\\u0000'"这样的普通Java字符串来实现相同的目标,但我想使用Xtend模板表达式。

我的Xtend版本是:2.9.1.v201512180746

2 个答案:

答案 0 :(得分:1)

没有"逃避"在模板表达式中,所以你必须使用你提到的解决方法:

'''«"'\\u0000'"»'''

'''«"'"»\u0000«"'"»'''

相关讨论:https://groups.google.com/forum/#!topic/xtend-lang/bVZ0nKmQGAI

答案 1 :(得分:1)

Xtend模板中允许使用单引号,只要它们不出现在模板的开头或结尾。因此,一个简单的解决方法是在单引号之前/之后添加一个空表达式:

SliceView