用几个分隔符解析一个字符串

时间:2014-02-09 10:51:08

标签: objective-c xcode

我正在尝试实现一个计算器,以便更熟悉Objective-C。我有一个用户输入的字符串,可能是“41 * 92”。什么是解析字符串以将2个数字添加到数组的好方法?像componentsJoinedByString这样的东西:但是在这个阶段有四个不同的分隔符(+, - ,*,/)?

2 个答案:

答案 0 :(得分:3)

您可以使用componentsSeparatedByCharactersInSet:

NSArray *arr = [string componentsSeparatedByCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@"+-*/"]];

答案 1 :(得分:1)

你可以像@Sean那样分割字符串,但如果你想实际解析41*92这样的输入,那么通常使用NSScanner 。请参阅Apple的String Programming Guide: Scanners或搜索 NSScanner教程,有很多。

(如果您想评估数学表达式,也可以使用NSExpression“作弊”,但我想这不是您想要的。)