ios 使用NSRegularExpression解析正則表達式(TextKit中用到)

初始化一個   NSRegularExpression 對象 注:_str是要匹配的字符串

NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"http://([\\w-]+\\.)+[\\w-]+(/[\\w- ./?%&=]*)?" options:NSRegularExpressionCaseInsensitive error:nil];


獲得所有匹配了表達式的字符串。

    NSArray *array =    nil;

    array = [regex matchesInString:_str options:0 range:NSMakeRange(0, [_str length])];
    NSString *str1 = nil;
    for (NSTextCheckingResult* b in array)

    {

         str1 是每個和表達式匹配好的字符串。

        str1 = [_str substringWithRange:b.range];
        NSLog(@" str 1 is %@",str1);

    }


獲得匹配的字符串的個數

NSUInteger numberOfMatches = [regex numberOfMatchesInString:_str options:0 range:NSMakeRange(0, [_str length])];


替換匹配的字符串  $0很重要 $0不行的話 $1依此類推 打印了看結果

    NSString *modifiedString = [regex stringByReplacingMatchesInString:_str
                                                               options:0
                                                                 range:NSMakeRange(0, [_str length])
                                                          withTemplate:@"<a href=\"$0\">$0</a>"];

    NSLog(@"######## the modified string is %@",modifiedString);

轉自:http://blog.csdn.net/paul_wuhaha/article/details/7406778

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章