Если вы пишете только 10.5+ приложение, вы должны быть в состоянии использовать NSString-х stringByReplacingOccurrencesOfString:withString:
чтобы сделать это с помощью довольно минимального кода, проверив длину до и после удаления строки, которую вы ищете.
Пример ниже (непроверенный, поскольку я работаю над 10.4, но не могу понять, почему это не сработает.) Я бы не сделал ваше приложение 10.5+ только для того, чтобы использовать его, хотя и было предложено много других методов Macmade и в дублированном вопросе.
NSString* stringToSearch = @"ok no ok no no no ok";
NSString* stringToFind = @"no";
int lengthBefore, lengthAfter, count;
lengthBefore = [stringToSearch length];
lengthAfter = [[stringToSearch stringByReplacingOccurrencesOfString:stringToFind withString:@""] length];
count = (lengthBefore - lengthAfter)/[stringToFind length];
NSLog(@"Found the word %i times", count);
Дубликат: HTTP : //stackoverflow.com/questions/2166809/number-of-occurrences-of-a-substring-in-an-nsstring/2166955 – kennytm
Это действительно поможет, если вы можете быть более конкретным. Как вы определяете слово? Достаточно ли проверять пробелы в строке поиска, или вам нужно учитывать знаки препинания, другие языки и т. Д.? –