我正在尝试使用rangeOfString方法获取NSString中Characters的位置。
例如,如果我有单词“BEER”,则希望获得字符串中字母E的位置,因此我应该获得位置1和2
rangeOfString只给我字母的第一次出现

NSRange range = [word rangeOfString:letter];

NSLog(@"Word is %@ Range is %d" , word, range.location);

所以我只得到位置1

我可以使用另一种方法还是必须使用NSScanner?

最佳答案

根据文档,这是它的工作方式:rangeOfString仅返回您传入的字符串的第一个匹配项。

您可以使用[rangeOfString:options:range:][1]并在每次为其指定range参数的正确值时遍历它提供的结果,也可以使用NSRegularExpression类。

您可以获取第一种方法here和第二种方法here的示例代码。

09-11 17:26