微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

java – Boolean对Concrete语法树的查询/表达式

我正在创建一个允许布尔表达式的搜索表单,例如:“foo AND bar”或“foo AND NOT bar”.

是否有PHP,Ruby或Java库可以将布尔表达式转换为具体的语法树?

(我可以编写自己的词法分析器/解析器,但我宁愿使用经过试验和测试的东西)

编辑:澄清一下,我不是解析心律失常的表达.它将用于解析允许布尔运算符的全文查询.

解决方法:

我推荐Treetop.这是一种为您的PEG生成解析器的小型语言(Parsing Expression Grammar).它比LALR语法更容易使用,并且比递归下降解析器更强大(即它可以做一些超过一个符号的前瞻).

虽然Treetop并不复杂,但开始时有一些简单的例子是有帮助的.你会在threedaymonk’s treetop examples找到它们.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐