【发布时间】:2011-03-29 17:58:06
【问题描述】:
有什么方法可以计算字符串中的空格数,例如“你好吗?”在 Objective-C 中?
【问题讨论】:
标签: objective-c iphone
有什么方法可以计算字符串中的空格数,例如“你好吗?”在 Objective-C 中?
【问题讨论】:
标签: objective-c iphone
你可以这样做:
[[string componentsSeparatedByString:@" "] count]
另外,请参阅此问题以了解其他几个解决方案:Number of occurrences of a substring in an NSString?
【讨论】:
如果您只想获取单词之间的空格数,可以使用[[string componentsSeparatedByString:@" "] count] - 1(空格总是比单词少1)。
但是,这只会得到单词之间的空格数,而不是空格的总数(即" How are you ? " 将是 3 个空格,如果你需要的话,这很好)。但是,如果您想要字符串中的空格总数,请继续遍历它。
NSUInteger spaces = 0;
for (NSUInteger index = 0; index < [string length]; index++) {
if ([string characterAtIndex:index] == ' ') {
spaces++;
}
}
这将为"_How__are_you___?___" 生成 11(代码格式化程序会删除一行中的多余空格,因此我必须用下划线显示空格)。
【讨论】: