gpt4 book ai didi

具有多种功能的 Swift 4 NSExpression

转载 作者:行者123 更新时间:2023-11-30 11:59:48 25 4
gpt4 key购买 nike

所以我有一个字符串公式,可以说是:

let testValue = 10
let formula = "(max(testValue - 20,0) * 14) + testValue - max(testValue - 20,0)"

我可以做简单的算术、乘法、除法、减法等,但如何将 Max 函数合并到这个字符串中?

我想我必须将 max 更改为可以子串的内容,然后单独执行每个函数并循环遍历实例,但是有没有更好的方法或者就是这样做的方法它?就像|@Max(x,y)|

此外,是否有特定的语法,因为我找不到任何使用 Max、Min、Sum、Avg 等的示例 - 也许我只是不理解文档。

//Current way
extension String {
var expression: NSExpression {
return NSExpression(format: self)
}
}

let results = formula.expression.expressionValue(with: nil, context: nil) as? Int

最佳答案

我明白了。

对于任何需要这个的人 - 您可以使用任何字符串并使用:

functionName(x) 适用于大多数函数,例如 sqrtmultiplybytrunc天花板

然后对于具有多个变量的六个(maxmincountaveragesum,还有一个我忘记了)你使用functionName({x,y})

所有内容都可以在带有 expressionValue(with: nil, context: nil)

的字符串中使用

关于具有多种功能的 Swift 4 NSExpression,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47385825/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com