2012-04-08 53 views
1

我正在寻找在Java解释器和/或数据结构,可以处理字符串一样:解释器和数据结构网络化解析(字符串)式

x^2+y^2+z^2 = 1" 

+-=定界符后来跟其解释其他操作如^

这是一个三维绘图项目,所以我也在寻找一种工具,可以隔离这样的字符串/数据结构中的变量之一。

如果你知道这样的结构/解释器/工具,或有任何想法如何实现这一点,我很想听听你的想法。

在此先感谢。

回答

2

这样的表达式可以使用recursive descent parser进行解析。解析器可以直接写入,或者如果语法变得复杂,可以使用解析器生成器(如antlr)。该表达式可以转换为抽象语法树,或者在解析时进行评估。

+1

http://parboiled.org比ANTLR更易于解析/ AST。 – 2012-04-09 14:20:53