我有一个NSString,我想找到它中的空格数。什么是最快的方式?
答案 0 :(得分:3)
执行速度可能不是最快,但输入速度最快:
[[myString componentsSeparatedByString:@" "] count]-1
答案 1 :(得分:1)
我试过这个似乎有效。可能有可能进行优化,但如果绝对必要,您只需要担心。
NSUInteger spacesInString(NSString *theString) {
NSUInteger result = 0;
if ([theString length]) {
const char *utfString = [theString UTF8String];
NSUInteger i = 0;
while (utfString[i]) {
if (' ' == utfString[i]) {
result++;
}
i++;
}
}
return result;
}
答案 2 :(得分:0)
我没有对此进行过测试,但它似乎应该起作用了。
int spacesCount = 0;
NSRange textRange;
textRange = [string rangeOfString:@" "];
if(textRange.location != NSNotFound)
{
spacesCount = spacesCount++;
}
NSLog(@"Spaces Count: %i", spacesCount);