pragma mark 字符串搜索
pragma mark 概念
/**
開頭 hasPrefix
結(jié)尾
包含
*/
pragma mark 代碼
#import <Foundation/Foundation.h>
#pragma mark 類
#pragma mark main函數(shù)
int main(int argc, const char * argv[])
{
#pragma mark 字符串搜索
NSString *str = @"http://baidu.com";
BOOL flag = nil;
#warning 1.是不是 以 xxx 開頭 (hasPrefix)
// 本質(zhì)就是從字符串的第一個(gè)字符開始匹配,只要不匹配 就返回NO
flag = [str hasPrefix:@"http://"]; // 查看是不是 以 http:// 開頭
NSLog(@"開頭 flag %i",flag);
if (flag)
{
NSLog(@"是一個(gè)URL");
}
else
{
NSLog(@"不是一個(gè)URL");
}
#warning 2.是不是 以 xxx 結(jié)尾
// 本質(zhì)就是從字符串的最后一個(gè)字符開始匹配,只要不匹配 就返回NO
// str = @"http://baidu.gif";
if ([str hasSuffix:@".gif"]) {
NSLog(@"是動態(tài)圖片");
}
else
{
NSLog(@"不是動態(tài)圖片");
}
#warning 3.是不是 包含了 xxxx
// 判斷字符串 是否 包含 baidu.com
// 只要str 中包含該字符串, 那么就會返回該 字符串在 str 中的起始位置 以及 該 字符串的長度
// range 其實(shí)是一個(gè)結(jié)構(gòu)體
/**
NSUInteger location; // 在第幾位(從0開始數(shù)) baidu.com 在 http://baidu.com
NSUInteger length; // 該字符串 有多少位(從1開始數(shù)) baidu.com
*/
NSRange range = [str rangeOfString:@"baidu.com"];
NSLog(@"location = %lu, length = %lu",range.location,range.length); // b在第7位 baidu.com 一共有9位
// 例子
// 如果str 中 沒有需要查找的字符串, 那么返回的range的length 是 0
str = @"lyh";
NSRange range1 = [str rangeOfString:@"lyh"];
// NSLog(@"location = %lu, length = %lu",range1.location,range1.length); // b在第1位 bc 一共有2位
// NSNotFound 沒有找到
if (range1.location == NSNotFound) {
NSLog(@"str 中 沒有需要查找的字符串");
}
else
{
NSLog(@"str 中 有需要查找的字符串");
NSLog(@"location = %lu, length = %lu",range1.location,range1.length); // b在第1位 bc 一共有2位
}
return 0;
}
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者