问题标签 [parse-tree]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
194 浏览

compilation - ocamlyacc 上的表达式类型错误

作为学校项目的一部分,我必须识别 .dot 文件并生成相应的解析树。为此,我必须使用我遇到困难的 ocamllex 和 ocamlyacc ......

这是我的 ocaml .mli 类型文件:

这是我的词法分析器文件:

这是我未完成的 yacc 文件:

识别一个简单的点文件似乎就足够了

但是当我尝试编译我的解析器接口时,我得到了这个错误:这个表达式的类型是'a list,但是一个表达式应该是 Types.graph 类型的(指ID EDGE ID SEMICOLON {[$1,$3)]}line )

我不明白,因为 {[$1,$3]} 有一个 (string * string) 列表类型。如果我们正在寻找可以是图表的 types.mli。

否则,我是否正确理解 ocamllex 和 ocamlyacc 的运行?

0 投票
1 回答
496 浏览

yacc - yacc 停止执行 shift&& 减少一次无法从 yylex() 获得更多符号

这是我的代码:

我的输入字符串是:+selector1.selector2||-selector4->selector4

此输入的解析树预计为: 预期的解析树

我的 yacc 生成的程序给出如下输出:

似乎程序停止执行 shift&& reduce 一次无法从 yylex() 获取更多符号,但我希望它减少堆栈中剩余的符号,L||-P->C因此,我可以在我的代码中生成整个解析树。

我的预期输出是:

0 投票
0 回答
490 浏览

c# - 用 antlr 和 c# 绘制 AST 树

我正在研究 ANTLR 的工作原理,在本指南中 https://theantlrguy.atlassian.net/wiki/display/ANTLR4/Getting+Started+with+ANTLR+v4

最后它创建一个像这样的解析树 在此处输入图像描述

(标签无关紧要,语法是意大利语)无论如何,在 C# 中是否有使用 ANTLR4 的方法可以绘制这样的树?我真的需要它

谢谢你们!

0 投票
2 回答
3771 浏览

python - 如何读取基于选区的解析树

我有一个由斯坦福大学的CoreNLP预处理的句子语料库系统预处理的句子语料库。它提供的其中一件事是句子的解析树(基于选区)。虽然我可以在绘制解析树(如树)时理解它,但我不确定如何以这种格式阅读它:

例如:

原句是:

我应该如何阅读这棵树,或者,是否有正确的代码(在 python 中)?谢谢。

0 投票
1 回答
847 浏览

sql - How can I process the LISP style tree generated by Antlr 4?

I parsed an SQL query using an Antlr 4 grammar. The result of tree.toStringTree() is this: ([] ([845] SELECT ([878 845] ([1473 878 845] ([1129 1473 878 845] ([1700 1129 1473 878 845] col1))) as ([1477 878 845] a)) FROM ([887 845] ([1487 887 845] ([1694 1487 887 845] table1)))))

Antlr documentation tells me this is a LISP style tree. How can I further process a LISP tree?

0 投票
1 回答
2369 浏览

parsing - 从 CYK 算法生成解析树

我使用CYK算法(已经在 J​​ava 中实现)来查看是否根据特定语法识别字符串。现在我需要为字符串生成一个解析树,是一种从我使用CYK算法时使用的矩阵生成树的方法吗?

0 投票
1 回答
44 浏览

parsing - 向斯坦福解析器提供格式化文本

我有一个格式为“Word_POS-TAG_Lemma Word_POS-TAG_Lemma Word_POS-TAG_Lemma Word_POS-TAG_Lemma .....”的短语有没有办法用这种格式化的输入来提供斯坦福解析器?此外,这是一种以标准依赖方式获取树的方法吗?

先感谢您

0 投票
0 回答
619 浏览

java - 我可以在 ANTLR 中将 ParseTree“转换”为 CommonTree 吗?

我想构造 ParseTree 的子树,但唯一包含 insertChild(index,Object) 方法的类似乎是 CommonTree,我无法传递 RuleContext 类型的对象,因为它尝试将其转换为 Tree 对象,我得到“ java.lang.ClassCastException:Java8Parser$ClassDeclarationContext 无法转换为 org.antlr.runtime.tree.Tree”异常。

有任何想法吗?谢谢。(编辑:添加代码)

0 投票
1 回答
581 浏览

java - 如何使用 ClearNLP 反序列化 CoNLL 格式的依赖树?

使用 ClearNLP 进行依赖解析会创建一个DEPTree对象。我已经解析了一个大型语料库并以 CoNLL 格式序列化了所有数据(例如,Google 代码上的这个 ClearNLP 页面)。

但我不知道如何反序列化它们。ClearNLP 提供了一种DEPTree#toStringCoNLL()方法(向下滚动此页面查看)。我正在寻找一些东西来读取 CoNLL 格式的解析树并创建一个DEPTree对象。我试图对其进行逆向工程,但并没有真正理解代码的内部工作原理。

相反,我创建了自己的依赖树类来处理我需要的基本功能,但我真的很想知道如何获取DEPTree对象。到目前为止,我还没有在他们的 API 中找到任何这样做的方法。

0 投票
1 回答
68 浏览

coffeescript - CoffeeScript:在程序中计算解析树(如咖啡-n)

有没有办法在 CoffeeScript 中计算程序的 CoffeeScript 解析树(以字符串形式提供)而不调用外部程序?

例如,假设我在 CoffeeScript 程序中有一个字符串 'square=(n)->n*n'。square.coffee我想获得与将此字符串存储在文件中并在命令行上调用相同的输出coffee -n square.coffee--- 但不创建另一个进程:

请在您的解决方案中提供如何解释生成的数据结构的文档链接。