我正在尝试实现一个计算器,以便更熟悉Objective-C。我有一个用户输入的字符串,可能是“41 * 92”。什么是解析字符串以将2个数字添加到数组的好方法?像componentsJoinedByString这样的东西:但是在这个阶段有四个不同的分隔符(+, - ,*,/)?
答案 0 :(得分:3)
您可以使用componentsSeparatedByCharactersInSet:
NSArray *arr = [string componentsSeparatedByCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@"+-*/"]];
答案 1 :(得分:1)
你可以像@Sean那样分割字符串,但如果你想实际解析像41*92
这样的输入,那么通常使用NSScanner 。请参阅Apple的String Programming Guide: Scanners或搜索 NSScanner教程,有很多。
(如果您想评估数学表达式,也可以使用NSExpression“作弊”,但我想这不是您想要的。)