NSMutableArray *letterArray = [NSMutableArray array];
NSString *letters = @"ABCDEF?क्";
[letters enumerateSubstringsInRange:NSMakeRange(0, [letters length])
options:(NSStringEnumerationByComposedCharacterSequences)
usingBlock:^(NSString *substring, NSRange substringRange, NSRange enclosingRange, BOOL *stop) {
[letterArray addObject:substring];
}];
for (NSString *i in letterArray){
NSLog(@"%@",i);
}
приводит к
A
B
C
D
E
F
?
क्
enumerateSubstringsInRange:options:usingBlock:
, доступным для iOS 4 + может перечислять строку с разными стилями.Один из них называется NSStringEnumerationByComposedCharacterSequences
, который будет перечислять букву за буквой, но чувствителен к суррогатным парам, базовым символам плюс объединяющие метки, хангул джамо и указательным группам согласных , которые все обозначаются как составной символ
Обратите внимание, что принял ответ"глотает" ?
и разбивает क्
на क
и ्
.