Ios 使用Swift从NSExpression处理NSInvalidArgumentException异常
我使用N表达式来解数学公式。如果输入公式正确,则一切正常,但如果我输入以下公式:Ios 使用Swift从NSExpression处理NSInvalidArgumentException异常,ios,swift,Ios,Swift,我使用N表达式来解数学公式。如果输入公式正确,则一切正常,但如果我输入以下公式: 6- 我的应用程序被终止,并显示以下错误消息: *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Unable to parse the format string "6- == 1"' 在Object-C中,可以将此代码放入@try块中。斯威夫特有什么相同的东西吗?或者我如何处理这些异常 以
6-
我的应用程序被终止,并显示以下错误消息:
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Unable to parse the format string "6- == 1"'
在Object-C中,可以将此代码放入@try块中。斯威夫特有什么相同的东西吗?或者我如何处理这些异常
以下是我的简单NSExpression代码:
let expression = NSExpression(format: finalFormula)
if let result = expression.expressionValueWithObject(nil, context: nil) as? NSNumber {
return result
}
我的解决方案是先检查输入,但如果我得到nil或类似的结果,我就可以了。这里的问题相同:。在Swift中似乎无法捕捉到表达式中的语法错误。因此,看起来我必须首先验证输入值?@patrickS除了自己手动验证输入之外,您是否找到了正确的解决方案?