【发布时间】:2019-03-23 09:21:05
【问题描述】:
我目前正在尝试从函数表达式生成抽象语法树,例如:
OR(FunctionOne("valueA", "valueB", "valueC"), FunctionTwo("valueD", "valueE", "valueF"))
基本上是运算符(AND | OR)及其函数的简单串联(可以嵌套)。
我想将此字符串转换为抽象语法树,例如:
value
OR
FunctionOne:
value1: valueA
value2: valueB
value3: valueC
FunctionTwo:
value4: valueD
value5: valueE
value6: valueF
到目前为止我做了什么......
从云雀导入云雀
parser = Lark(r"""
value: operator
operator : operatorvalue"("function"(how_to_handle_params)"*")"
operatorvalue : "OR" | "AND"
function : "FunctionOne" | "FunctionTwo"
""", start='value')
谁能帮我解决这个问题?
只需要一些起点,因为文档只处理 json...
谢谢和问候!
【问题讨论】:
标签: python syntax tree grammar lark-parser