我正在编写一个允许用户输入布尔表达式的应用程序.我需要能够在运行时评估输入的布尔表达式,并且正在寻找解析器和expressoin验证器.
解析器
解析器需要将布尔表达式作为字符串并返回true/false.
例:
string expression = "(1 == 1) && (1 > 0)"; Parser parser = new Parser(); boolean result = parser.parse(expression); // Result should be True.
除了处理布尔表达式之外,我还需要它来处理数学.
expression = "((1 + 1 * 2) == 1)"; result = parser.parse(expression); // Result should be False.
验证
这样我就可以告诉用户输入的表达式是否有问题我还需要一种方法来验证语法.
我使用.NET Compact Framework在C#中工作,但如果您知道用其他语言编写的内容可能会有所帮助.
感谢您的任何帮助,您可以提供.汤姆