美文网首页
OC语言day07-11字符串搜索

OC语言day07-11字符串搜索

作者: liyuhong165 | 来源:发表于2016-07-17 19:56 被阅读36次

    pragma mark 字符串搜索

    pragma mark 概念

    /**
     开头 hasPrefix
     结尾 
     包含
     */
    

    pragma mark 代码

    #import <Foundation/Foundation.h>
    #pragma mark 类
    
    #pragma mark main函数
    int main(int argc, const char * argv[])
    {
    #pragma mark 字符串搜索
        NSString *str = @"http://baidu.com";
        BOOL flag = nil;
    #warning 1.是不是 以 xxx 开头 (hasPrefix)
        // 本质就是从字符串的第一个字符开始匹配,只要不匹配 就返回NO
        flag = [str hasPrefix:@"http://"]; // 查看是不是 以 http:// 开头
        NSLog(@"开头 flag %i",flag);
        if (flag)
        {
            NSLog(@"是一个URL");
        }
        else
        {
            NSLog(@"不是一个URL");
        }
        
    #warning 2.是不是 以 xxx 结尾
        // 本质就是从字符串的最后一个字符开始匹配,只要不匹配 就返回NO
    //    str =  @"http://baidu.gif";
        if ([str hasSuffix:@".gif"]) {
            NSLog(@"是动态图片");
        }
        else
        {
            NSLog(@"不是动态图片");
        }
        
    #warning 3.是不是 包含了 xxxx
        // 判断字符串 是否 包含 baidu.com
        // 只要str 中包含该字符串, 那么就会返回该 字符串在 str 中的起始位置 以及 该 字符串的长度
        // range 其实是一个结构体
        /**
         NSUInteger location;   // 在第几位(从0开始数)          baidu.com 在 http://baidu.com
         NSUInteger length;     // 该字符串 有多少位(从1开始数)   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;
    }
    
    
    

    相关文章

      网友评论

          本文标题:OC语言day07-11字符串搜索

          本文链接:https://www.haomeiwen.com/subject/mtcpjttx.html