是否有一种相对简单的方法在Objective C中使用带有字符串变量的数学运算符?
例如:
字符串"x*x"应返回"x ^ 2"
字符串"x/x"应返回"1"
我正在寻找一些实际上使用变量名称"x"而没有指定数值的东西,并以"x"的形式返回答案.
我正在使用NSExpression评估数学字符串,并且效果很好。但是,我想提供一种在输入字符串无效(例如“ 3 ++ 2”)时捕获错误的方法。有没有办法解决此问题,而不是由于“ NSInvalidArgumentException”而导致应用程序终止。抱歉,我对Objective-C并不陌生。我现在使用的代码是:
NSExpression *exp = [NSExpression expressionWithFormat: string];
NSNumber *result = [exp expressionValueWithObject:nil context:nil];
answer = [result stringValue];
Run Code Online (Sandbox Code Playgroud) 我正在尝试检查字符串的字符串后缀,但我收到错误:
if ([string hasSuffix:[NSCharacterSet characterSetWithCharactersInString:@"(+-*/"])
Run Code Online (Sandbox Code Playgroud)
我做错了什么,有没有正确的选择?