ANTLRv4 字符串匹配
ANTLRv4 String matching
今天早上我一直在用 ANTLRv4 做一些事情,我需要从用户那里获取某个字符串,在语法中定义为:
OP : 'a' | 'b' | 'c';
在 {}
Java 中的不同定义之后,我需要将 OP
与另一个字符串进行比较。目前,这不起作用:
if ($string.text == "a") {
//Do Something
}
其中 string
是我附加到 OP
的特定实例的名称。如何将 string
的文本值与另一个字符串 ("a"
) 进行比较?
您可能需要做:
$string.text.equals("a")
“==”运算符将比较 Java 中的引用。要比较字符串的值,您必须使用 equals() 方法。
试试这个:
if ($string.text.equals("a")) {
//Do Something
}
阅读此内容以了解有关运算符的更多信息:What's the difference between ".equals" and "=="?
今天早上我一直在用 ANTLRv4 做一些事情,我需要从用户那里获取某个字符串,在语法中定义为:
OP : 'a' | 'b' | 'c';
在 {}
Java 中的不同定义之后,我需要将 OP
与另一个字符串进行比较。目前,这不起作用:
if ($string.text == "a") {
//Do Something
}
其中 string
是我附加到 OP
的特定实例的名称。如何将 string
的文本值与另一个字符串 ("a"
) 进行比较?
您可能需要做:
$string.text.equals("a")
“==”运算符将比较 Java 中的引用。要比较字符串的值,您必须使用 equals() 方法。
试试这个:
if ($string.text.equals("a")) {
//Do Something
}
阅读此内容以了解有关运算符的更多信息:What's the difference between ".equals" and "=="?