我正在使用NSRegularExpression
2 个字符串之间提取 URL,这是整个字符串:
<a href="/url?q=http://www.myurl.com/videos/how-to/&sa=
我需要提取 和 之间的/url?q=
部分&sa=
。
我正在使用NSRegularExpression
2 个字符串之间提取 URL,这是整个字符串:
<a href="/url?q=http://www.myurl.com/videos/how-to/&sa=
我需要提取 和 之间的/url?q=
部分&sa=
。
您可以使用以下方法NSString
:- (NSArray *)componentsSeparatedByString:(NSString *)separator
它可以使用正则表达式找到并挖掘出来,具有积极的后视和前瞻,如下所示:
NSString *orgStr = @"<a href=\"/url?q=http://www.myurl.com/videos/how-to/&sa=";
NSString *URLRegExPattern = @"(?<=url\\?q=).*(?=&sa=)";
NSError *regExErr;
NSRegularExpression *URLRegEx = [NSRegularExpression regularExpressionWithPattern:URLRegExPattern
options:0
error:®ExErr];
NSString *URLString = nil;
NSRange range = [URLRegEx rangeOfFirstMatchInString:orgStr
options:0
range:NSMakeRange(0, orgStr.length)];
if (!NSEqualRanges(range, NSMakeRange(NSNotFound, 0))) {
URLString = [orgStr substringWithRange:rangeOfFirstMatch];
}
NSLog(@"URL: %@", URLString);