方法名:
- (NSRange)rangeOfString:(NSString *)searchString;
使用方法:
NSString *str = @"makjer@¥$^code_hello98.test0sdf";
NSString *test = @"test";
NSRange range = [str rangeOfString:test];
方法解釋:
rangeOfString: 方法意思是問str這個(gè)字符串里面有沒有test這個(gè)字符串姿锭,然后這個(gè)方法回復(fù)我們是一個(gè)NSRange類型,這個(gè)類型是什么東西呢食拜?
typedef struct _NSRange {
NSUInteger location;
NSUInteger length;
} NSRange;
哎,對聊副编,這是一個(gè)結(jié)構(gòu)體!A髑俊痹届!
它是一個(gè)結(jié)構(gòu)體,里面有兩個(gè)屬性打月,一個(gè)是location队腐,一個(gè)是length。
既然它有這兩個(gè)屬性奏篙,上面代碼我們得到的range就可以看一下柴淘,這兩個(gè)屬性值分別是什么,然后就明白這兩個(gè)屬性的意思了秘通,看看打印結(jié)果为严。
NSLog(@"range.location:%ld--range,length:%ld", range.location, range.length);
這個(gè)str字符串很明顯我們?nèi)庋劭梢钥吹娇隙〞衪est這個(gè)字符串對吧。
然后我們看這兩個(gè)屬性肺稀,可以看到控制臺輸出range的兩個(gè)屬性location是23第股,這個(gè)23意思就是test這個(gè)字符串的第一個(gè)“t”在str這個(gè)字符串里面的23號位置』霸“m”是0夕吻、“a”是1诲锹、“k”是2......“t”是23,所以location這個(gè)屬性值為23涉馅。
再來看length這個(gè)屬性归园,可以看到length是4,字面意思就是這個(gè)查找的test字符串長度是4稚矿。一個(gè)“t”庸诱、一個(gè)“e”、一個(gè)“s”盐捷、一個(gè)“t”四個(gè)偶翅,所以length這個(gè)屬性值為4。
所以這個(gè)方法返回的NSRange結(jié)構(gòu)體就是確定你要查找的字符串在被查找的字符串的什么位置多少長度碉渡。(示例中返回的意思就是:str字符串里有test的字符串聚谁,這個(gè)test字符串在str中第23號位置,長度為4V团怠)
我的更多文章:你等下課滴
您可以關(guān)注我以便隨時(shí)查看我最新的文章形导,本篇文章是為了做筆記,順便提供給大家共同學(xué)習(xí)進(jìn)步习霹!如果您對本篇文章有任何疑問朵耕,請留言給我,有什么錯(cuò)誤也可以留言提醒淋叶,如果對大家有幫助我很榮幸阎曹!感謝!