我正在开发一个应用程序,其中简单的数学表达式作为字符串传递(例如“2 + 3”)。我需要执行这些表达式以确保它们等于目标。
在Mathematica / Wolfram语言中,可以使用简单的命令ToExpression []将字符串转换为表达式。 Swift中有什么相同的东西吗?如果没有,怎么可能将字符串转换为可行的数学?
答案 0 :(得分:2)
使用[NSExpression][1]
,就像这样...
let expression = NSExpression(format:"2+3")
if let result = expression.expressionValueWithObject(nil, context: nil) as? NSNumber {
print(result)
} else {
print("error evaluating expression")
}
使用NSExpression(包括Swift示例)是一个很好的blog post from NSHipster。