我在Google App Engine文档中看到http://www.antlr.org/ Antlr3用作解析第三方库。
但据我所知,Pyparsing似乎更容易使用,我只是想解析一些简单的语法。
还有其他选择吗?我可以在App Engine上进行pyparsing吗?
答案 0 :(得分:4)
为此目的,Pyparsing的运行时占用空间很小。它是一个单一的源文件pyparsing.py,所以只需将其放入您自己的源文件中并解析即可!
- 保罗
答案 1 :(得分:1)
“Just do it”! - )获取pyparsing.py,例如来自here,并将其放入您的应用引擎应用的目录中;现在,您可以在应用代码中import pyparsing
使用它。
例如,将来自here的greeting.py调整为:
from pyparsing import Word, alphas
greet = Word( alphas ) + "," + Word( alphas ) + "!" # <-- grammar defined here
hello = "Hello, World!"
print "Content-type: text/plain\n"
print hello, "->", greet.parseString( hello )
在handlers:
两行下面的app.yaml中添加:
- url: /parshello
script: greeting.py
启动您的应用,访问http://localhost:8083/parshello
(或您正在运行的任何端口;-),您将在浏览器中看到纯文本输出:
Hello, World! -> ['Hello', ',', 'World', '!']