是有一个建立分析器可以使用从C#这可以解析数表达式?

我知道,我可以使用的核心本身的分析表达,并使用。NET/链接检索的结构树...但是我在寻找的东西,不依赖的核心。

有帮助吗?

解决方案

我的 matheclipse-parser模块在Java中实现了一个解析器,它可以解析一个很大的子集mathematica表达式。有关用法,请参阅readme.md页面。也许你可以将解析器移植到C#?

其他提示

我根据Wolfram Research的合同在300行OCaml代码中编写了一个Mathematica解析器,发现它非常简单,因为语法是在他们的文献中清楚地记录了,并且通过与Mathematica本身一起玩很容易找到任何含糊之处。

Mathematica法是不好的记录,真的。但据我所知,这是 LALR(1)和可能LL(1);方括号内的案/标记语法提供分析程序完成的线索 关于什么的期待下一个,就像口齿不清和XML。

DMS软件的再设计工具包 不会有一个数学语法,已经使用的现实的任务。这包括MMa的程序以及纯粹的表达形式。

这可能不会帮助你,因为你想要一个。

如果可以访问的内核,我会坚持到底。

我认为这种事情不存在(我很想知道)。但是在Mathematica中你可以将函数 FullForm 应用于任何表达式并获得一些非常容易解析的东西,有点像Lisp中的s表达式。例如,

FullForm[a+b*c]

产量

Plus[a, Times[b,c]]

这是所有Mathematica表达式的基础表示,应该直接解析。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top