我有一个名为“result”的字符串,因为我需要从数学表达式中获取数字。表达式作为 NSString 给出。我使用[NSString componentsSeparatedByCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:]
提供包含组件的 NSArray 的方法方法。但我很少怀疑。这是代码。
NSString *result=[obj computeTheExp:@"+19+55/23-42*3-34-"];
我用这个方法就可以了
NSArray *operands = [inputString componentsSeparatedByCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@"+-/*"]];
当我使用显示操作数的内容时
NSLog(@"%i",[operands count]);
for(i=0;i<[operands count];i++)
{
NSLog(@"%@",[operands objectAtIndex:i]);
}
我在控制台上得到这个
2013-08-05 16:47:52.967 mathExpTest[6708] 8
2013-08-05 16:47:52.992 mathExpTest[6708]
2013-08-05 16:47:53.002 mathExpTest[6708] 19
2013-08-05 16:47:53.012 mathExpTest[6708] 55
2013-08-05 16:47:53.022 mathExpTest[6708] 23
2013-08-05 16:47:53.032 mathExpTest[6708] 42
2013-08-05 16:47:53.042 mathExpTest[6708] 3
2013-08-05 16:47:53.052 mathExpTest[6708] 34
2013-08-05 16:47:53.062 mathExpTest[6708]
计数不应该是6吗?为什么显示中有间隙?