ios - 将字符串转换为运算符 - swift

标签 ios iphone swift

我的程序中有许多字符串方程的变体。

“1 + 9 × 8”

“4+6”

“5/9 + 7”

“3×8”

那么,我要做的就是进行计算并给出结果。但是,我无法找到一种方法来读取运算符字符(“+/X +”)并将其拟合到等式中。希望我的问题很清楚。

注意:我能够读取数字字符,这是一个简单的 String 到 Int 转换。但是,我很难将字符 ("X/+ -") 的 String 等价物转换为其运算符。我怎样才能做到这一点 ?

如果这不可能,有人可以建议解决方法。

最佳答案

尝试这样的事情

var s = " 1 + 9 X 8"
s = s.replacingOccurrences(of: "X", with: "*")
let expn = NSExpression(format:s)
print("\(expn.expressionValue(with: nil, context: nil) ?? 0)")

关于ios - 将字符串转换为运算符 - swift,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48296517/

相关文章:

swift - 使用和不使用 UIGestureRecognizer 的调用函数

ios - 带有全屏 slider 的 Swift 图片库

swift - 使用链式函数的 Swift 完成处理程序

ios - 如何在按下其他UIButton时触发UIButton的 "Pressed Effect"或 "Highlight Effect"

iphone - 在文件中存储 NSArray/NSMuatbleArray

iphone - 将 TTLauncherView 从 sdk3.x 移动到 sdk4.0 为 TTLauncherItem 的徽章添加了丑陋的阴影

iphone - 如何在基于选项卡的应用程序中检查用户 secret ?

iphone - 监视UIImageView的图像属性更改

ios - 自动收缩导航栏标题 iOS 7 或更高版本

ios - 表格 View 单元格中的文本未换行到第二行