0

を使用してNSRegularExpression2 つの文字列の間の URL を抽出しています。文字列全体は次のとおりです。

  <a href="/url?q=http://www.myurl.com/videos/how-to/&amp;sa= 

と の間の部分を抽出する必要が/url?q=あり&amp;sa=ます。

4

2 に答える 2

0

次のように、肯定的な後読みと先読みを含む正規表現を使用して、見つけて掘り出すことができます。

NSString *orgStr = @"<a href=\"/url?q=http://www.myurl.com/videos/how-to/&amp;sa=";

NSString *URLRegExPattern = @"(?<=url\\?q=).*(?=&amp;sa=)";

NSError *regExErr;
NSRegularExpression *URLRegEx = [NSRegularExpression regularExpressionWithPattern:URLRegExPattern 
                                                                          options:0
                                                                            error:&regExErr];

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);
于 2012-06-16T16:23:13.520 に答える
0

次のメソッドを使用できますNSString- (NSArray *)componentsSeparatedByString:(NSString *)separator

于 2012-06-16T16:07:32.503 に答える