问题标签 [expression-evaluation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
422 浏览

.net - 包含度量单位的数学表达式评估器

类似于这个问题,但不同。那里有很多好的答案,但没有一个是度量单位。

一个包含度量单位的.NET兼容(甚至通过COM,如果需要)数学表达式评估器怎么样?

我已经为无单位表达式尝试了 NCalc。我知道 F# 可以在代码中做到这一点。Google Calculator 很棒,但作为受支持的 API 不可用,并且不适合该项目的服务基础。

这是一篇关于这个主题的有趣论文。它涵盖了测量单位的计算,但省略了“加法常数”转换,例如摄氏到华氏(根据他们的结论)。它提出了一个关于实质的好观点。“加仑汽油”与“加仑牛奶”。单位相同,但内容不同,因此图书馆可能应将其视为不同。使用正确的炼金术士方程,一加仑汽油能产出多少牛奶?:-P

NCalc 是否可以实现这一点?否则,增强 NCalc 会涉及多少工作?是否有任何其他可以处理度量单位的.Net 兼容库?

0 投票
3 回答
924 浏览

java - Java:用于表达式解析和评估的库,带有事先未知的标识符

我需要评估一个布尔表达式。目的是过滤一组标记项目。标签可以是任何名称(比方说,像 Java 标识符)。

例如:

这对于标记的项目是正确的:

  • 费费
  • 富吧嘘
  • 酒吧

我事先不知道需要哪些名字。我检查了 JEXL 但它有JexlContext,它基本上是一个需要在评估之前填充的 Map。

我需要一些调用回调函数的库来决定标识符是真还是假。或任何其他允许标识符在评估之前未知的机制。

它必须像啤酒一样免费(它用于 Maven 插件),所以 Jep 是不可能的。

我可以使用什么?

0 投票
3 回答
2333 浏览

objective-c - 将数学方程的 NSString 转换为值

我想知道如何评估一个方程的字符串表示,就好像它是一个真正的方程:

我想返回“false”,因为 15+14 不等于 23。我怎样才能让它工作?

0 投票
1 回答
1421 浏览

bash - 当我不希望它时,ksh 脚本中的 eval 命令函数是 globbing

考虑以下 ksh 脚本“myquery.ksh”

在上面的代码中,eval $3="${query}" 语句永远不会正常工作。在所有情况下,它似乎都试图在 "local query="... 语句中使用 "*"。

它总是返回这样的消息:

我很确定这是我自己的用户错误,我在这种情况下如何应用 eval,但已经尝试了几乎所有替代语法结构来执行 eval $3 分配,但无法完成这项工作。

我已将其标记为 bash,因为我很确定它在那里的行为也会相同......

0 投票
1 回答
1647 浏览

c++ - C++ 中的布尔表达式解析和求值

我需要在 C++ 中运行时评估简单的布尔函数。这些函数作为字符串从文件中读取。是否有任何可用的库可供我使用?

我调查了BuDDy,但听起来它不解析字符串。

0 投票
0 回答
639 浏览

java - Janino ExpressionEvaluator 没有猜测所有参数?

考虑库的ExpressionEvaluator类的一个简单用例Janino,即当使用它来猜测表达式的参数时,如下所示:

虽然以上对于我使用过的任何类型的表达式(包括一些非常晦涩的表达式)都非常有效(100%),但如果任何参数以大写字母开头,则将其省略。

例如,表达式

aVar如果传递给上述方法,将只产生 1 个参数 ( ),而Another忽略另一个参数 ( )。

对这种行为有什么解释(例如,以大写字母开头的变量是否假定为类名)?

最重要的是,是否可以绕过所描述的行为(例如,通过某些配置选项)?


更新

显然,限制更普遍,影响所有以大写字母开头的参数。这是一个已知的 Janino 限制(或功能),如JANINO-151中所述并在相关讨论中提到。

事实上, Janino ExpressionEvaluator 类guessParameterNames()的方法的源代码证实了这一点。

0 投票
2 回答
2090 浏览

java - 编写字符串求值函数

我正在尝试编写一个字符串评估函数,即

我最初的想法是使用正则表达式来收集运算符和数字,因为它们可以匹配。而不是在找到该信息之后,以某种方式找出一种优先考虑/*操作员的方法-+

这是我开始的方式:

现在我可以编写另一种方法来使用相同的逻辑提取数字。

现在是我卡住的部分。#1 上述方法在第三个示例中失败:

而这个 #2 即使我尝试以前的示例,我也无法弄清楚如何将它们按正确的顺序排列。

我在正确的轨道上,有没有人有一些有用的建议请分享?

0 投票
1 回答
299 浏览

visual-studio-2010 - 如何在 Visual Studio 2010 中的整个解决方案中查找和删除数据提示?

我注意到许多表达式评估弹出 数据提示严重减慢了调试的进出速度,所以我想删除其中的大部分(为此我需要先找到它们,是否有一个按钮?)或者如果它是不是一个选项,一次删除所有这些。

0 投票
1 回答
1028 浏览

c# - Unity3d:从 C# 对象执行任意 javascript

我想

我怎样才能做到这一点?

0 投票
1 回答
84 浏览

javascript - 用于处理操作的 JavaScript 库

我的代码动态生成字符串/数字操作。该程序动态构建类似于以下内容的内容:

我想输出这个:

我可以为此编写一个库,但我目前处于时间限制之下。如果有人知道可以执行类似于上述方程的库(int + int = int),(string + int = string)等?