Java Eclipse插件:如何查找/解析三元运算符?

Java Eclipse插件:如何查找/解析三元运算符?,java,eclipse,eclipse-plugin,ternary-operator,eclipse-jdt,Java,Eclipse,Eclipse Plugin,Ternary Operator,Eclipse Jdt,我已经实现了几个访问者,例如用于赋值、ForStatements等,但是似乎没有方便的方法在我的Java项目中找到三元运算符(?:) 那么,在我的项目中还有其他方法可以找到三元表达式吗?您可以按住ctrl-f键,检查正则表达式,然后搜索: \?.*: 我假设您使用的是AST,因为您指的是“访问者”。在这种情况下,您可以使用如下vistor: new ASTVisitor() { @Override public boolean visit(ConditionalExpressi

我已经实现了几个访问者,例如用于赋值、ForStatements等,但是似乎没有方便的方法在我的Java项目中找到三元运算符(?:)


那么,在我的项目中还有其他方法可以找到三元表达式吗?

您可以按住ctrl-f键,检查正则表达式,然后搜索:

\?.*:

我假设您使用的是AST,因为您指的是“访问者”。在这种情况下,您可以使用如下vistor:

new ASTVisitor() {
    @Override
    public boolean visit(ConditionalExpression node) {
        ...
        return false;
    }
}
在eclipse内部使用的一个好工具是ASTView,它将在打开的编辑器中显示任何选定代码的AST。您可以从此更新站点安装ASTView:

这个bug是针对Eclipse EGL开发工具的,它与Java Development Tools.Oops无关。好的-删除了链接。谢谢我不想手动查找三元运算符,而是在我的插件环境中自动(以编程方式)查找。因此,我不能使用ctrl+f。此外,您的正则表达式还将显示诸如“Hello?我的意思是:当然!”之类的字符串……为什么您的代码中会有“Hello?我的意思是:当然!”这样的字符串?我想另一个问题是在代码中的某个地方找到“?”和在完全不同的地方找到“:”。另外,我对这个问题的误解也很严重,不是吗。我已经有一位访客访问了
ConditionalExpression
s。我试了大约50次,但没有成功。既然您建议使用它,我就试着运行我已经存在的代码——它可以工作了!我不知道为什么,我不知道怎么做——但这并不重要。非常感谢。