0

我在字符串格式(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(例如类似情况)。

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

我知道这是一个很难实现的算法,但对此的任何帮助都非常感谢。提前致谢

4

0 回答 0