任何算法概念的表达式简化

时间:2013-09-26 18:51:29

标签: java regex algorithm expression-trees drools

我在字符串格式(在Java中)中有不同的表达式,例如:

String expression = "IN G1 AND OUT G1 AND (IN G2 OR OUT G3)

这里G1,G2,G3表示区域,关键字只有IN,AND,OUT,OR,(,)可以使用。 我必须检查表达式是否在逻辑上正确,并且想要简化这些类型的表达式。

这里表达的意思是,一个东西位于G1中,它应该是外部G1(这在逻辑上是不可能的)并且它应该位于G2中或它应该在G4之外。

现在我想要一个算法,我可以从中检测到该表达式在逻辑上是不正确的,因为没有可能满足 IN G1 AND OUT G1 (如类似情况)。

表达式可以嵌套在任何级别。请以任何方式指导我如何检测这些类型的表达式的逻辑正确性,如果表达式不合逻辑,则会将表达式减少到某种程度。

我知道这是一个有点棘手的算法,但是对此有任何帮助都很受欢迎。在此先感谢

0 个答案:

没有答案