有什么方法可以在 NSString
中找到任何特定字符的大写出现,例如:
NSString *str=@"How many U's are in Uppercase";
我尝试的是给出所有大写字符,
int count=0;
for (i = 0; i < [str length]; i++) {
BOOL isUppercase = [[NSCharacterSet uppercaseLetterCharacterSet] characterIsMember:[str characterAtIndex:i]];
if (isUppercase == YES)
count++;
}
或
[[str componentsSeparatedByCharactersInSet:[NSCharacterSet uppercaseLetterCharacterSet]] count] - 1;
但我需要在 NSString
中出现任何特定字符的大写。
最佳答案
你可以用正则表达式来做:
NSString *str = @"How many U's are in Uppercase";
NSString *pattern = @"U";
NSRegularExpression *expression = [[NSRegularExpression alloc] initWithPattern:pattern options:0 error:nil];
NSArray *result = [expression matchesInString:str options:0 range:NSMakeRange(0, str.length)];
NSLog(@"%ld", result.count); // 2
关于ios - 如何查找特定字符在 NSString 中以大写形式出现的次数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39207122/