标签: java regex math normalization
我有一个方法来计算字符串中的算术表达式,但它非常依赖于格式(所有标记应该用一个空格分隔):
2 + 2 -2 + ( 7 / 5 ) * 6
等等。所以我想添加方法Normalize(),这会将输入字符串规范化为适当的格式(删除额外的空格,添加必要的空格并处理uniry减号)和错误信号(如果有的话)。 最初,我想使用正则表达式来检查行是否实际上是一个表达式,但这只是作业的一半。在这种情况下,标准化字符串的最佳方法是什么?
Normalize()
答案 0 :(得分:0)
您不需要“标准化程序”。如果使用正则表达式,请在编写模式时考虑空格。但正则表达式不是解决这个问题的最佳方法。通常的方法是编写解析器,例如JavaCC。