zoukankan      html  css  js  c++  java
  • 解析URL 获取某一个参数值

    /**
     *  解析URL 获取某一个参数值
     *
     *  @param name       需要获取的字段
     *  @param webaddress URL
     *
     *  @return 返回的参数对应的 value
     */
    -(NSString *) jiexi:(NSString *)name webaddress:(NSString *)webaddress
    {
        NSError *error;
        NSString *regTags=[[NSString alloc] initWithFormat:@"(^|&|\?)+%@=+([^&]*)(&|$)",name];
        NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:regTags
                                                                               options:NSRegularExpressionCaseInsensitive
                                                                                 error:&error];
        
        // 执行匹配的过程
        // NSString *webaddress=@"http://www.baidu.com";
        NSArray *matches = [regex matchesInString:webaddress
                                          options:0
                                            range:NSMakeRange(0, [webaddress length])];
        for (NSTextCheckingResult *match in matches) {
            //NSRange matchRange = [match range];
            //NSString *tagString = [webaddress substringWithRange:matchRange];  // 整个匹配串
            //        NSRange r1 = [match rangeAtIndex:1];
            //        if (!NSEqualRanges(r1, NSMakeRange(NSNotFound, 0))) {    // 由时分组1可能没有找到相应的匹配,用这种办法来判断
            //            //NSString *tagName = [webaddress substringWithRange:r1];  // 分组1所对应的串
            //            return @"";
            //        }
            
            NSString *tagValue = [webaddress substringWithRange:[match rangeAtIndex:2]];  // 分组2所对应的串
            //    NSLog(@"分组2所对应的串:%@
    ",tagValue);
            return tagValue;
        }
        return @"";
    }
    
  • 相关阅读:
    POJ1579Function Run Fun
    C++ 程序员必读书目清单
    zoj2100Seeding(水题)
    接口开发及技术负责
    哪些需求最重要
    地址
    哪些需求最重要
    setTimeOut与 setInterval区别
    项目管理简介
    项目管理简介
  • 原文地址:https://www.cnblogs.com/zhangsheng-iOS/p/6015162.html
Copyright © 2011-2022 走看看