Je veux diviser un je veux un Comment faire cela avec objectif -C et cacao? P> p> nstring code> dans un
nsarray code>. Par exemple, donné:
nsarray code> comme: p>
7 Réponses :
NSMutableArray *chars = [[NSMutableArray alloc] initWithCapacity:[theString length]]; for (int i=0; i < [theString length]; i++) { NSString *ichar = [NSString stringWithFormat:@"%C", [theString characterAtIndex:i]]; [chars addObject:ichar]; }
Il s'agit d'une solution naïve qui ne gère pas les paires de substitution ni les personnages composés, car @jeremyy a été résolu dans son commentaire sur la question. En outre, n'oubliez pas de libérer le tableau lorsque vous n'utilisez pas GC ou ARC.
Ce lien contient des exemples pour diviser une chaîne en un Array basé sur des sous-chaînes et également basé sur des chaînes dans un ensemble de caractères. J'espère que le message peut vous aider.
Voici le code SNIP P>
NSMutableArray *characters = [[NSMutableArray alloc] initWithCapacity:[myString length]]; for (int i=0; i < [myString length]; i++) { NSString *ichar = [NSString stringWithFormat:@"%c", [myString characterAtIndex:i]]; [characters addObject:ichar]; }
Envisagez d'améliorer votre message puisque votre réponse est essentiellement un lien. Voir: Les réponses contiennent simplement des liens ailleurs "bonnes réponses"? et Pourquoi reliera mal?
@Bavarieux, c'est assez? ;-)
@Bavarious d'accord, la réponse que le seul lien ne sont plus utiles une fois que l'URL est morte. Donc Empletack B> s'il vous plaît! Essayez de poster du code qui peut aider à l'avenir pour n'importe qui. Merci!!
c'est ce que la console est renvoyée em> p> < / p>
p>
Que diriez-vous de cela, si vous avez Nstring * mystring = @ "abcdef"; sans espace b> ??
Vous avez besoin de quelque chose pour le séparer.
Sinon, vous pouvez utiliser une "boucle" et sous-traitant les caractères dans des chaînes.
Ok, selon la réponse yan.kun b> s
Sans boucle Vous pouvez utiliser ceci:
NSString *myString = @"ABCDEF"; NSMutableString *tempStr =[[NSMutableString alloc] initWithString:myString]; if([myString length] != 0) { NSError *error = NULL; // declare regular expression object NSRegularExpression *regex =[NSRegularExpression regularExpressionWithPattern:@"(.)" options:NSMatchingReportCompletion error:&error]; // replace each match with matches character + <space> e.g. 'A' with 'A ' [regex replaceMatchesInString:tempStr options:NSMatchingReportCompletion range:NSMakeRange(0,[myString length]) withTemplate:@"$0 "]; // trim last <space> character [tempStr replaceCharactersInRange:NSMakeRange([tempStr length] - 1, 1) withString:@""]; // split into array NSArray * arr = [tempStr componentsSeparatedByString:@" "]; // print NSLog(@"%@",arr); }
A B C D E F ð± à¤à¥
Certainement la bonne façon. J'ai fait une catégorie de la catégorie: gist.github.com/4634479
En Swift, cela ne prend qu'une seule ligne. Voir Stackoverflow.com/a/44675708/364446
à Swift, cela devient très simple.
SWIFT 3: P>
myString.map { String($0) }
SWIFT 4.2: strong> sortie: ["Karin", carrie "," David "]] p> matrice à la chaîne forte> p> sortie:" Karin, Carrie, David " P" > p>
Comment voulez-vous gérer des paires de substituts et des personnages composés de caractères UTF-16?
Vous devriez accepter une réponse