我遇到了一个我无法弄清楚的问题。
我正在尝试对字符串运行rangeOfString方法,但我不确定如何确定是否找不到该字符串。例如:
NSRange range = [@"abc" rangeOfString:@"d" options:NSCaseInsensitiveSearch range:NSMakeRange(0,3)];
显然,“d”不包含在字符串“abc”中。我希望能够做到这一点:
if(the range is empty since "d" is not in "abc")
//do something
这是什么代码?
谢谢!
答案 0 :(得分:71)
来自 NSString
的文档-[NSString rangeOfString]
返回值
NSRange结构给出了 接收器中的位置和长度 第一次出现aString。 如果aString是,则返回 {NSNotFound,0} 未找到或为空(@“”)。
所以看起来像:
if ([@"abc" rangeOfString:@"d"].location == NSNotFound){
//Do something
是Apple批准的方式。
编辑:
我做了一个非常糟糕的错字,修好了,谢谢Kalle。
答案 1 :(得分:14)
检查范围的长度。如果它不为零,则会找到它。