zoukankan      html  css  js  c++  java
  • 利用正则表达式解析URL


    -(NSString *) jiexi:(NSString *)CS webaddress:(NSString *)webaddress
    {
         NSError *error;
         NSString *regTags=[[NSString alloc] initWithFormat:@"(^|&|\?)+%@=+([^&]*)(&|$)",CS];
        NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:regTags
                                                                              options:NSRegularExpressionCaseInsensitive
                                                                                error:&error];
        
        // 执行匹配的过程
       
    // NSString *webaddress=@"http://wgpc.wzsafety.gov.cn/dd/adb.htm?adc=e12&xx=lkw&dalsjd=12";
        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 @"";
    }

  • 相关阅读:
    处理了一个“服务器能ping得通,但telnet连接失败”导致数据库登录不了的问题
    解决了一个oracle登录缓慢的问题
    今天解决了一个mysql远程登录和本机ip登录都失败的问题
    c++笔记
    c语言笔记
    常见并发与系统设计
    linux网络IO笔记
    linux文件IO全景解析
    linux网络协议笔记
    长大后才懂的蜡笔小新 ​​​​
  • 原文地址:https://www.cnblogs.com/hxwj/p/4609832.html
Copyright © 2011-2022 走看看