This is NSString+MiscExtensions.m in view mode; [Download] [Up]
#import "NSString+MiscExtensions.h" //#import <objc/objc.h> @implementation NSString (MiscExtensions) // This method donated by Robert Todd Thomas - (BOOL) hasNonEmptyString /*" Returns YES if the string is not empty. This method is a good substitute for something like if (aString != nil && ![aString isEqualToString:@""]) since if the receiver is nil or the string is empty NO is returned. "*/ { if ([self isEqualToString:@""]) { return NO; } return YES; } - (SEL)selectorValue { return sel_getUid([self cString]); } - (NSArray *)wordArray { NSCharacterSet *spaceSet = [NSCharacterSet whitespaceAndNewlineCharacterSet]; NSCharacterSet *nonspaceSet = [spaceSet invertedSet]; NSMutableArray *wordArray = [NSMutableArray array]; NSScanner *scanner = [NSScanner scannerWithString:self]; NSString *aWord; [scanner setCharactersToBeSkipped:spaceSet]; while (![scanner isAtEnd]) { if ([scanner scanCharactersFromSet:nonspaceSet intoString:&aWord]) [wordArray addObject:aWord]; } return wordArray; } - (unsigned)wordCount { NSCharacterSet *spaceSet = [NSCharacterSet whitespaceAndNewlineCharacterSet]; NSCharacterSet *nonspaceSet = [spaceSet invertedSet]; NSScanner *scanner = [NSScanner scannerWithString:self]; unsigned count = 0; [scanner setCharactersToBeSkipped:spaceSet]; while (![scanner isAtEnd]) { if ([scanner scanCharactersFromSet:nonspaceSet intoString:NULL]) count++; } return count; } - (NSString *)wordNum:(unsigned)n { NSCharacterSet *spaceSet = [NSCharacterSet whitespaceAndNewlineCharacterSet]; NSCharacterSet *nonspaceSet = [spaceSet invertedSet]; NSScanner *scanner = [NSScanner scannerWithString:self]; NSString *aWord; int count = 0; [scanner setCharactersToBeSkipped:spaceSet]; while (![scanner isAtEnd]) { if ([scanner scanCharactersFromSet:nonspaceSet intoString:&aWord]) { if (n == count) return aWord; } count++; } return nil; } - (NSEnumerator *)wordEnumerator { return [[self wordArray] objectEnumerator]; } @end @implementation NSMutableString (MiscExtensions) // This method donated by Robert Todd Thomas - (void) setCString:(const char*)aString { [self setString:[NSString stringWithCString:aString]]; } @end
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.