到目前为止,我能够使用pyparsing来解析ebnf语法。 但是,我想尝试以下代码示例,但无法想出 一个好的语法。
global radius = 5
DrawCircle(radius)
{
radius = 10
DrawCircle(radius)
}
DrawCircle(radius)
范围内的radius with值应为10,5,否则为5。 任何帮助将不胜感激?
此致
普利文
答案 0 :(得分:0)
我能够通过运行以下代码来获取上述代码的解析器:
enclosed = Forward()
curls = nestedExpr('{', '}', content=enclosed)
enclosed << (OneOrMore(commands | ',' | curls))
我有一个跟进问题。我习惯使用http://pyparsing.wikispaces.com/file/view/ebnf.py
编写ebnf语法我可以获得一些帮助来确定ebnf的转发或相当于上述代码吗?或者我应该在ebnf之外做什么?
此致
普利文