规范化Java中算术表达式求值的字符串

时间:2011-12-18 14:21:51

标签: java regex math normalization

我有一个方法来计算字符串中的算术表达式,但它非常依赖于格式(所有标记应该用一个空格分隔):

2 + 2  
-2 + ( 7 / 5 ) * 6  

等等。所以我想添加方法Normalize(),这会将输入字符串规范化为适当的格式(删除额外的空格,添加必要的空格并处理uniry减号)和错误信号(如果有的话)。
最初,我想使用正则表达式来检查行是否实际上是一个表达式,但这只是作业的一半。在这种情况下,标准化字符串的最佳方法是什么?

1 个答案:

答案 0 :(得分:0)

您不需要“标准化程序”。如果使用正则表达式,请在编写模式时考虑空格。但正则表达式不是解决这个问题的最佳方法。通常的方法是编写解析器,例如JavaCC