我目前正在解析xFrom XML数据并在我的应用中显示它。有时,问题输入将具有我必须解析和评估的逻辑表达式属性。
在最简单的层面上,我给出了一个这样的字符串:
"selected(Key,’AnswerToQuestion’)”
在这里,我必须解析Key,AnswerToQuestion并检查我的答案字典,看看Key的值是否等于'AnswerToQuestion'。这很简单。
然而在其他情况下,我的表达更为复杂,例如:
“not(selected(Key,’AnswerToQuestion’) OR selected(Key2,’AnswerToQuestion2’))”
我只需要支持"和","不是"和"或"语句。
我迷失在如何以有效的方式解决这个问题。有些东西告诉我一个简单的正则表达式不会削减它,我需要递归评估它(递归编程从来就不是我的强项)。最重要的是,我以字符串格式给出表达式,这使事情变得更复杂。
以前有人这样做过吗?或者可以提供一些见解?
由于