如何从整个ANTLR AST树中切片子树?

如何从整个ANTLR AST树中切片子树?,antlr,antlr4,Antlr,Antlr4,我正在使用ANTLR4生成的解析器处理一些JavaScript文件。我不知道如何从ANTLR AST树中分割想要的子树。例如,如何按如下方式对图片中红方块中的子树进行切片 ANTLR AST树的一个示例: 您有两个选项:编写一个解析树侦听器或访问者以访问这些节点;或者,编写一个XPath表达式来查找这些节点。注意,在Antlr运行时中有一个XPath表达式搜索,但它非常有限。

我正在使用ANTLR4生成的解析器处理一些JavaScript文件。我不知道如何从ANTLR AST树中分割想要的子树。例如,如何按如下方式对图片中红方块中的子树进行切片

ANTLR AST树的一个示例:


您有两个选项:编写一个解析树侦听器或访问者以访问这些节点;或者,编写一个XPath表达式来查找这些节点。注意,在Antlr运行时中有一个XPath表达式搜索,但它非常有限。