我想添加 NSArray ("123" -> To NSArray with "1","2","3")
中的每个字符。我测试过componentsSeparatedByString:@""
和componentsSeparatedByString:nil
,但是不起作用,有人可以帮助我吗?
最佳答案
根据您的需要,您可能希望通过组合字符枚举字符串,这考虑了对重音字符进行编码的不同方式。
这可能不是一个大问题,但如果您使用 enumerateSubstringsInRange:options:usingBlock:
至少它可以得到处理。代码可以如下所示:
NSMutableArray *result;
NSString *string = @"Genève, Zu\u0308rich, Bellinzona";
// ^
// What humans know as: Zürich
result = [NSMutableArray array];
[string enumerateSubstringsInRange: NSMakeRange(0,string.length)
options: NSStringEnumerationByComposedCharacterSequences
usingBlock: ^(NSString *substring, NSRange substringRange, NSRange enclosingRange, BOOL *stop){
// If you want to see the way the string has been split
NSLog(@"%@", substring);
[result addObject: substring];
}
];
请注意,“è”是单个字符,但“ü”已被编码为组合字符。两者仍然被正确识别以在循环中使用。如果您使用 characterAtIndex:
“ü”将被分成两部分(u 和 ¡),这很可能不是您想要的。
关于objective-c - 组件通过字符串分隔 : @"" (every character in array),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16494732/