即使是非常基本的东西也可以。就像输入和评估x + 1之类的东西一样,其中x是我要指定的变量。]>
我曾考虑为每个公式使用Strings编写自己的字符串,为解析它们而使用正则表达式等,但是让我们假设我的目标是尽可能地懒惰,如果有其他选择(尤其是一个正式的),我宁愿先尝试使用它。
那里有什么东西可以做这样的事情吗?
即使是非常基本的东西也可以。就像输入和评估x + 1之类的东西一样,其中x是我要指定的变量。我当时想为每个公式使用String编写自己的字符串,...
您可以考虑使用Java 6中的scripting。参考JDK带有JavaScript实现,您也可以插入其他语言。
我知道以下库:
几年前我已经成功地使用了JEP,但它似乎仍在积极开发中。我相信他们在那时拥有更宽松的许可证,但它可能比自己编写代码便宜(取决于您的确切需求和技能)。
我已经建立了一个Java库来为自己做这件事,作为Lex / YACC的学习示例。它被合并到一个较大的项目中,看起来效果很好。如果要再次启动更大的项目,我将遵循上面的建议并使用Java脚本引擎。
您可以尝试LibFormula,这是一个基于OpenDocument的OpenFormula标准的公式求值库。
您可以签出我在exp4j下发布的Apache License 2.0
[有些人可能对名为formula4j的新工具感兴趣。
也许MathML?