0

我有一个大的属性字符串,它是我的正文,我需要在不同的位置插入 10 个标题。

我知道他们需要去哪里,而且他们不会从那个位置移动,所以我可以insertAttributedString:atIndex:循环使用来添加它们。

我的问题是在我想要插入的主字符串中找到索引值。有谁知道比手动计算数千个字符直到我到达标题位置更简单的方法?

4

2 回答 2

2

您是否有理由尝试在 XCode 中执行此操作,因为这听起来不像您正在尝试以编程方式完成此操作?因为,就您而言,XCode 不支持字符计数,所以我会下载 TextWrangler(Mac App Store 中免费)之类的东西,这样您就可以在文件中轻松计算字符行数。

于 2013-06-17T14:55:50.850 回答
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++; 
  }
}
于 2013-06-17T14:18:17.897 回答