使用NSRange获取子串

时间:2013-04-21 07:01:54

标签: ios objective-c nsstring substring nsrange

我尝试从此链接中读出youtubevideos的网址:http://gdata.youtube.com/feeds/api/videos?author=channelname

我试过这样:

NSRange startRange = [ret rangeOfString:@"<media:content url='http"];
NSRange endRange = [ret rangeOfString:@"'"];

NSRange searchRange = NSMakeRange(startRange.location , endRange.location);
NSLog(@"Link: %@",[ret substringWithRange:searchRange]);

输出只是:<media:content

我的错误在哪里?

1 个答案:

答案 0 :(得分:1)

  

我的错误在哪里?

错误在于你没有使用the right tool来执行任务。

无论如何,你似乎混淆了范围的长度和结束位置。 NSMakeRange()获取位置和长度,而不是起始位置和结束位置。

另外,不要指望- [NSString rangeOfString:]神奇地猜测你想要做什么。它将返回给定子字符串的第一个匹配项,这不是您想要的。