阅读量:5
在iOS中,可以使用NSString的rangeOfString:
方法来判断一个字符串中是否包含另外一个字符串。该方法返回一个NSRange结构体,如果找到了指定的子字符串,它会返回该子字符串在原字符串中的位置和长度;如果没有找到,它会返回一个特殊的NSRange结构体,位置为NSNotFound。
示例代码如下:
NSString *mainString = @"Hello, World!"; NSString *subString = @"World"; NSRange range = [mainString rangeOfString:subString]; if (range.location != NSNotFound) { NSLog(@"字符串中包含指定的子字符串"); } else { NSLog(@"字符串中不包含指定的子字符串"); }
上述代码中,主字符串为"Hello, World!“,子字符串为"World”。rangeOfString:
方法返回的range结构体中,location表示子字符串在主字符串中的起始位置,length表示子字符串的长度。如果找不到子字符串,则location为NSNotFound。
注意,rangeOfString:
方法默认区分大小写,如果不区分大小写,可以使用rangeOfString:options:
方法,并设置NSCaseInsensitiveSearch
选项。
另外,如果只需要判断字符串是否以某个子字符串开头或结尾,可以使用hasPrefix:
和hasSuffix:
方法。
NSString *mainString = @"Hello, World!"; NSString *prefix = @"Hello"; NSString *suffix = @"World"; if ([mainString hasPrefix:prefix]) { NSLog(@"字符串以指定的前缀开头"); } else { NSLog(@"字符串不以指定的前缀开头"); } if ([mainString hasSuffix:suffix]) { NSLog(@"字符串以指定的后缀结尾"); } else { NSLog(@"字符串不以指定的后缀结尾"); }
上述代码中,hasPrefix:
方法用于判断字符串是否以指定的前缀开头,hasSuffix:
方法用于判断字符串是否以指定的后缀结尾。