我有一个很大的属性字符串,这是我的正文,我需要在不同位置插入10个标题。
我知道他们需要去哪里,他们不会从那个位置移动,所以我可以在循环中使用insertAttributedString:atIndex:
来添加它们。
我的问题是找到我希望它插入的主字符串中的索引值。任何人都知道比手动计算成千上万个字符更简单的方法,直到我到达标题的位置?
答案 0 :(得分:2)
你有没有理由在XCode中尝试这样做,因为它听起来并不像你想要以编程方式完成这个任务?因为,就你的观点而言,XCode不支持字符数,我会下载类似TextWrangler的东西(在Mac App Store中免费),这样你就可以在文件中获得简单的字符行数。
答案 1 :(得分:1)
要获取NSString的索引,请使用:
NSRange range = [string rangeOfString:@"MyString"];
如果有多次出现,你可以用它循环:
NSUInteger count = 0, length = [str length];
NSRange range = NSMakeRange(0, length);
while(range.location != NSNotFound)
{
range = [str rangeOfString: @"cake" options:0 range:range];
if(range.location != NSNotFound)
{
range = NSMakeRange(range.location + range.length, length - (range.location + range.length));
count++;
}
}