如何解决antlr4 / python3:漂亮的打印解析树到控制台
如何将解析树的版本打印到stdout?
input_stream = FileStream(argv[1])
lexer = PrystLexer(input_stream)
stream = CommonTokenStream(lexer)
parser = PrystParser(stream)
tree = parser.start_rule()
print(Trees.toStringTree(tree,None,parser))
这会将整个树打印在用括号定界的一行上。
(start_rule (block (stmt (simple_stmt (small_stmt (import_stmt from (nameaccess system) import (nameaccess io))) ;)) <EOF>))
我想要类似HTML的代码。
<start_rule>
<block>
<stmt>
<simple_stmt>
<import_stmt>
"from"
<nameaccess "system">
"import"
<nameaccess "io">
";"
</import_stmt>
</simple_stmt>
</stmt>
</block>
</start_rule>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。