Какао: Разбор NSString по длине символа - PullRequest
1 голос
/ 03 декабря 2009

У меня есть NSString, с которой я работаю, но я хотел бы проанализировать его по длине символа. Так что разбейте его на NSArray, и каждый объект в массиве должен быть x символами из этой строки. В общем, разбейте строку на подстроки определенной длины

Итак, как мне это сделать?

пример:

NSString * string = @ "Вот моя строка"

NSArray объекты:

"Ее"

"е я"

"м"

"у с"

"три"

"нг"

1 Ответ

5 голосов
/ 03 декабря 2009

Может ли это работать? Не проверено, хотя

@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

РЕДАКТИРОВАТЬ - реализовано как категория использования как

NSString *myString = @"Wish you a merry x-mas";
NSArray *array = [myString splitIntoPartsWithLength:10];
...