Frage

Ich habe ein NSString, mit dem ich arbeite, aber ich möchte es durch Charakterlänge analysieren. Brechen Sie es also in ein NSArray auseinander und lassen Sie jedes Objekt im Array x Zeichen aus dieser Zeichenfolge sind. Teilen Sie also die Saite im Grunde genommen in Unterzeichenfolgen einer bestimmten Länge auf

Wie mache ich das?

Beispiel:

Nsstring *string = @"Hier ist meine Zeichenfolge"

NSArray -Objekte:

"Sie"

"ei" "

"SM"

"ys"

"Tri"

"ng"

War es hilfreich?

Lösung

Kann das funktionieren? Aber nicht getestet

@interface NSString (MyStringExtensions)
- (NSArray*)splitIntoPartsWithLength:(NSUInteger)length;
@end

@implementation NSString (MyStringExtensions)
- (NSArray*)splitIntoPartsWithLength:(NSUInteger)length
{
    NSRange range = NSMakeRange(0, length);
    NSMutableArray *array = [NSMutableArray array];
    NSUInteger count = [self length];

    while (length > 0) {
        if (range.location+length >= count) {
            [array addObject:[self substringFromIndex:range.location]];
            return [NSArray arrayWithArray:array];
        }
        [array addObject:[self substringWithRange:range]];
        range.location = range.location + length;
    }
    return nil;
} 
@end

BEARBEITEN - implementiert als Kategorie verwendet als

NSString *myString = @"Wish you a merry x-mas";
NSArray *array = [myString splitIntoPartsWithLength:10];
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top