我知道使用 componentsSeparatedByString: 分割字符串有几个答案,但是如果字符串没有分隔符怎么办。使用@"",不起作用。
NSString *str = @"ABCDE";
NSArray *arr = [str componentsSeparatedByString:@""];
NSLog(@"%@", arr)
==> ABCDE
我想要的是——
==> (A,B,C,D,E)
这样我就可以访问每个字符。谢谢!
我知道使用 componentsSeparatedByString: 分割字符串有几个答案,但是如果字符串没有分隔符怎么办。使用@"",不起作用。
NSString *str = @"ABCDE";
NSArray *arr = [str componentsSeparatedByString:@""];
NSLog(@"%@", arr)
==> ABCDE
我想要的是——
==> (A,B,C,D,E)
这样我就可以访问每个字符。谢谢!
最可靠的技术是-[NSString enumerateSubstringsInRange:options:usingBlock:]
与NSStringEnumerationByComposedCharacterSequences
选项一起使用。
NSMutableArray* array = [NSMutableArray array];
[str enumerateSubstringsInRange:NSMakeRange(0, str.length)
options:NSStringEnumerationByComposedCharacterSequences
usingBlock:^(NSString *substring, NSRange substringRange, NSRange enclosingRange, BOOL *stop){
[array addObject:substring];
}];
要么[string characterAtIndex:i];
在for
循环中使用,要么在循环
- (NSString *)substringWithRange:(NSRange)aRange
中使用。
NSMutableArray *arr = [[NSMutableArray alloc] init];
for (int i = 0; i < string.length; i++)
{
unsigned int character = [string characterAtIndex:i];
[arr addObject:[NSString stringWithFormat:@"%C",character]];
}