How to get the first N words from a NSString in Objective-C?
What's the simplest way, given a string: NSString *str = @"Some really really long string is here and I just want the first 10 words, for example"; to result in an NSString with the first N (e.g., 10) words? EDIT: I'd also like to make sure it doesn't fail if the str is shorter than N. Barry Wark If the words are space-separated: NSInteger nWords = 10; NSRange wordRange = NSMakeRange(0, nWords); NSArray *firstWords = [[str componentsSeparatedByString:@" "] subarrayWithRange:wordRange]; if you want to break on all whitespace: NSCharacterSet *delimiterCharacterSet = [NSCharacterSet