ios - 使用 NSRange 获取子字符串

标签 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

我的错误在哪里?

最佳答案

Where is my mistake?

错误是您没有使用 the right tool来完成任务。

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

另外,不要指望 - [NSString rangeOfString:] 神奇地猜出您要做什么。它将返回给定子字符串的第一次出现,但这不是您想要的。

关于ios - 使用 NSRange 获取子字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16128757/

相关文章:

ios - 获取 UICollectionViewCell 标签文本

objective-c - Swift 中 if 语句/Obj-C 闭包中的非 Bool

objective-c - 当我从 UITableViewController 打开自定义 UIView 时,如何关闭自定义 View 并返回 TableView ?

objective-c - 仅当变量为 nil 时才分配空字符串(三元运算符)

ios - 如何在 stringWithContentsOfURL :encoding:error:? 中限制字符串的大小

c# - 检测用户是否正在从另一个应用程序播放音乐

ios - RACSignal combineLatest 使用多个 UIControls

objective-c - 如何解决 Core Foundation/IO Kit 中较新的多 GPU Apple 笔记本电脑上的 CGDirectDisplayID 更改问题?

objective-c - 在常量和非常量字符串之间交替时 NSString 的最佳分配

ios - 从相机胶卷中挑选一张后图像不显示,将输入的图像存储在数组中 swift