我在NSDictionary
中有一个字符串值,看起来像这样
Rule = "K-------;-KKCT---";
所以,如果我做这样的事情
NSString *tempString = [NSString alloc] init];
tempString = [myDictionary objectForKey:@"Rule"];
tempString现在有以下值“K -------; - KKCT ---”,我想知道如何计算在这种情况下分号有多少个字符。 / p>
答案 0 :(得分:3)
NSString
的以下方法正是您要找的
- (NSRange)rangeOfString:(NSString *)aString
这将获得您提供的第一个字符串实例的“范围”(在本例中为分号)
答案 1 :(得分:2)
尝试一下:
NSString *tempString = myDictionary[@"Rule"];
NSUInteger count = [tempString rangeOfString:@";"].location;
if (count == NSNotFound) {
count = 0;
}
请注意,您不应仅为了从字典中为变量分配另一个值而分配空字符串。
如果字符串中没有分号,则结果将是NSNotFound
的特殊值。上面的代码将其转换为0计数。根据需要调整此逻辑。
答案 2 :(得分:0)
您也可以这样做:
NSArray *subStrings = [tempString componentsSeparatedByString: @";"];
int firstStringLength = [[subStrings objectAtIndex: 0] length];
如果你需要找到所有子串的长度,你只需循环遍历数组。