用于解析逻辑表达式的Java库

时间:2011-12-07 05:00:47

标签: java parsing

我有一个像“A AND B OR C AND(D OR E)”这样的字符串。我只想在这里解析逻辑表达式,是否有相同的Java Api。

这里A,B,C ......的形式是字符串,字符串,字符串(即键,值,运算符)

2 个答案:

答案 0 :(得分:1)

首先,您需要修复要接受的表达式的语法。你写的:

  

“A和B或C和(D或E)”

是您的语言的示例字符串。首先,您需要定义可以使用BNF定义的语言。这将使您完全了解自己的语言。

然后您输入的任何任意表达式都需要进行解析。您可以创建expression tree

最后,您需要评估表达式树。

article

中给出了一个如何完成它的合理示例

答案 1 :(得分:0)

使用Spring Expression - 支持AND OR NOT