Si vous écrivez une application 10.5+ seulement, vous devriez être en mesure d'utiliser stringByReplacingOccurrencesOfString:withString:
de NSString méthode pour le faire avec un code assez minimal, en vérifiant la longueur avant et après la suppression de la chaîne que vous recherchez.
Exemple ci-dessous (non testé car je travaille sur 10.4, mais je ne vois pas pourquoi cela ne fonctionnerait pas.) Je ne ferais pas votre application 10.5+ juste juste pour l'utiliser cependant, beaucoup d'autres méthodes suggérées par Macmade et dans la question en double.
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);
double: http : //stackoverflow.com/questions/2166809/number-of-occurrences-of-a-substring-in-an-nsstring/2166955 – kennytm
Il serait vraiment utile si vous pouviez être plus précis. Comment définissez-vous "mot"? Est-il suffisant de vérifier les caractères d'espace autour de la chaîne de recherche, ou devez-vous tenir compte de la ponctuation, d'autres langues, etc.? –