繁体   English   中英

如何计算NSString中的大写字符数?

[英]How to count the number of uppercase characters in a NSString?

我试图找出计算NSString中大写字符数的最佳方法。 我知道如何通过使用此代码找出某个字符是否为大写:

NSString *s = @"This is a string";
BOOL isUppercase = [[NSCharacterSet uppercaseLetterCharacterSet] characterIsMember:[s characterAtIndex:0]];

计算NSString中大写字母数的最佳方法是什么? 谢谢。

NSString *s = @"This is a string";  
int count=0;  
for (i = 0; i < [s length]; i++) {
    BOOL isUppercase = [[NSCharacterSet uppercaseLetterCharacterSet] characterIsMember:[s characterAtIndex:i]];
    if (isUppercase == YES)
       count++;
}

count是大写出现的次数。

逐个遍历字符串中的索引,并在找到大写字母时将1加到计数器中。

一线解决方案

 NSUInteger count = [[[@"A string HERE!!" componentsSeparatedByCharactersInSet:[[NSCharacterSet uppercaseLetterCharacterSet] invertedSet]] componentsJoinedByString:@""] length]; // count = 5

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM