Cette expression rationnelle correspond à tout depuis le début jusqu'à ce que (mais à l'exclusion) le premier colon:
^[^:]*
Pour inclure le premier colon est aussi simple que de le mettre sur la fin:
^[^:]*:
donc, d'utiliser soit de ceux qui RegexKitLite, vous pouvez faire:
NSString * firstItem = [someString stringByMatching:@"^[^:]*" capture:0];
Notez qu'il n'y a pas de parenthèses - puisque * est gourmand, vous pouvez simplement utiliser la classe inversée et utiliser le groupe capturé 0 (c.-à-d. le match entier).
Il convient de noter que la plupart des langues incluront des fonctions qui vous permettent de le faire avec une fonction régulière, par exemple ListFirst(MyString,':')
ou MyString.split(':')[0]
Je soupçonne Objective-C a quelque chose de similaire à ce ... eh oui, voir here
NSString *string = @"oop:ack:bork:greeble:ponies";
NSArray *chunks = [string componentsSeparatedByString: @":"];
Impressionnant ...merci – Xcoder