Домашняя страница Разбиение строки на токены в ObjectiveC
Публикация
Отменить

Разбиение строки на токены в ObjectiveC

При работе со строками в ObjectiveC часто требуется разбить строку на токены, по какому-либо символу. Рассмотрим наиболее часто необходимые примеры использования.

Разбиение строки на слова:

1
2
3
NSString* sourceString = @"Some string";
NSArray* words = [ sourceString componentsSeparatedByString: @" " ];
// теперь words содержит: [ @"Some", @"string" ]

Разбиение строки по нескольким символам:

1
2
3
4
5
NSString* sourceString = @"Game-info/title";
NSArray* words = [ sourceString componentsSeparatedByCharactersInSet:
                      [ NSCharacterSet characterSetWithCharactersInString: @"-/" ]
                    ];
// теперь words содержит: [ @"Game", @"info", @"title" ]

Если вам нужно разбить строку на символы, то это можно сделать пробежав в цикле по символам строки и создав по строке на каждый символ:

1
2
3
4
5
6
7
8
int length = [sourceString length];
NSMutableArray* chars = [[NSMutableArray alloc] initWithCapacity: length ];
for( int i = 0; i < length; ++i )
{
    NSString* ch  = [ NSString stringWithFormat: @"%c", [ sourceString characterAtIndex: i ] ];
    [ chars addObject: ch ];
}
// теперь массив chars содержит строки с символами из начальной строки
Публикация защищена лицензией CC BY 4.0 .