NSRange: некорректное поведение.Зачем? - PullRequest
2 голосов
/ 27 февраля 2011

range.location должно быть 0. Я прав?

NSRange range;
range = [@"beer" rangeOfString:@"beer and vodka"];
if (range.location== NSNotFound)
{
    NSLog(@"Why?");
}

1 Ответ

4 голосов
/ 27 февраля 2011

Поскольку вы ищете строку "beer and vodka" в строке "beer" - очевидно, что более длинная строка отсутствует в более короткой, поэтому вы получите ожидаемый результат.Что вам нужно, вероятно, должно быть наоборот:

NSRange range = [@"beer and vodka" rangeOfString:@"beer"];
if (range.location == NSNotFound)
{
    NSLog(@"Why?");
}
...