3

我有一个字符串,例如“下雨是什么”

我需要在需要通过键盘输入的每个字符下添加闪烁。所以我使用 [characterAtIndex]..

但是当我到达'it'中的 i 使用 [characterAtIndex:i] 找到 i 的索引时,它返回 5。它在字符串中必须是 8。

如何获取字符串中下一个重复字符的正确索引?

代码:

- (int) getCurrentIndexOfChar : (unichar)c instring : (NSString *)str {
      for (int i = 0; i<=[str.length]; i++) {
         if(c == [str characterAtIndex:i]) {
             if (previousChar == c){    //I check here for previous character 
                  return i+1;           //If the previous character is same as next I increment index
             } else {
                  return i;
             }
             previousChar = c;
          }
      }
}
4

1 回答 1

3

请尝试这种方式

NSString *main = @"This is it in rain";
NSString *search = @"This is i";
NSLog(@"Index: %d",[main rangeOfString:search].location+[search length]-1);

在这里,您可以将搜索替换为用户输入的文本。

于 2013-06-15T05:26:48.173 回答