ANTLRv4字符串匹配

时间:2015-08-08 17:39:35

标签: java string antlr antlr4

我今天早上一直在研究ANTLRv4,我需要从用户那里获取一个字符串,在语法中定义如下:

OP : 'a' | 'b' | 'c';

在不同定义后的{} Java-thingy中,我需要将OP与另一个字符串进行比较。目前,这不起作用:

if ($string.text == "a") {
    //Do Something
}

其中string是我附加到OP特定实例的名称。如何将string的文本值与另一个字符串("a")进行比较?

2 个答案:

答案 0 :(得分:1)

您可能需要这样做:

$ string.text.equals("&#34)

答案 1 :(得分:1)

'=='运算符将比较Java中的引用。要比较字符串的值,必须使用equals()方法。

试试这个:

if ($string.text.equals("a")) {
    //Do Something
}

阅读本文以获取有关运营商的更多信息:What's the difference between ".equals" and "=="?