-1

私はCDATAを解析していますが、値を取得しています... http://nikelebron.net/feed/そしてhttp://www.nicekicks.com/feed/、この両方のRSSフィードでタグのsrc値を取得したいです

- (void)parser:(NSXMLParser *)parser foundCDATA:(NSData *)CDATABlock
{
 NSString *someString = [[NSString alloc] initWithData:CDATABlock  
                                          encoding:NSUTF8StringEncoding];
}
4

1 に答える 1

0

このコードは、CDATA 内のすべてのjpg 画像リンクを出力します。

-(void) parser:(NSXMLParser *)parser foundCDATA:(NSData *)CDATABlock{
    NSString *cDataString = [[NSString alloc] initWithData:CDATABlock encoding:NSUTF8StringEncoding];
    NSDataDetector *detect = [[NSDataDetector alloc] initWithTypes:NSTextCheckingTypeLink error:nil];
    NSArray *matches = [detect matchesInString:cDataString options:0 range:NSMakeRange(0, [cDataString length])];

    for(int i=0; i<matches.count;i++){
      NSTextCheckingResult *result = [matches objectAtIndex:i];
      NSString *linkUrl = [result URL].absoluteString;


      if([[linkUrl pathExtension] isEqualToString:@"jpg"]){
      //for your requirement, change the above line to
      //NSString *pathExtension = [linkUrl pathExtension];
      //if((pathExtension.length>=3)&&([[pathExtension substringToIndex:3] isEqualToString:@"jpg"])){
       NSLog(@"image link:%@", linkUrl);
      }else NSLog(@"link:%@", linkUrl);

    }
}
于 2013-05-03T04:45:25.063 に答える