1

作業中の NSString がありますが、文字の長さで解析したいと思います。したがって、それを NSArray に分割し、配列内の各オブジェクトをその文字列の x 文字にします。基本的に、文字列を特定の長さのサブ文字列に分割します

それで、どうすればいいですか?

例:

NSString *string = @"これが私の文字列です"

NSArray オブジェクト:

"彼女"

「ええ」

「スム」

「はい」

「トリ」

「ん」

4

1 に答える 1

5

これは機能しますか?まだテストされていません

@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];
于 2009-12-02T22:11:14.827 に答える