歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> iOS 使用NSRegularExpression解析正則表達式

iOS 使用NSRegularExpression解析正則表達式

日期:2017/3/1 10:12:53   编辑:Linux編程

初始化一個 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);

Copyright © Linux教程網 All Rights Reserved