iOS 使用NSRegularExpression解析正则表达式

2014-11-24 10:58:36 来源: 作者: 浏览: 0

初始化一个 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:@"$0"];
NSLog(@"######## the modified string is %@",modifiedString);


-->

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: