gop*_*pal 11 iphone cocoa cocoa-touch objective-c ios
我想NSString分成一个NSArray.例如,给定:
NSString *myString=@"ABCDEF";
Run Code Online (Sandbox Code Playgroud)
我想要一个NSArray像:
NSArray *myArray={A,B,C,D,E,F};
Run Code Online (Sandbox Code Playgroud)
使用Objective-C和Cocoa如何做到这一点?
Vik*_*ica 24
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);
}
Run Code Online (Sandbox Code Playgroud)
结果是
A
B
C
D
E
F
??
Run Code Online (Sandbox Code Playgroud)
enumerateSubstringsInRange:options:usingBlock: 适用于iOS 4+可以枚举具有不同样式的字符串.一个被称为NSStringEnumerationByComposedCharacterSequences,将逐个列举,但对代理对,基本字符加组合标记,Hangul jamo和印度语辅音簇敏感,所有这些都称为组合字符
请注意,接受的答案 "吞下" and breaks ??闯入?和?.
Fer*_*tes 12
转变
NSString * string = @"A B C D E F";
NSArray * array = [string componentsSeparatedByString:@" "];
//Notice that in this case I separated the objects by a space because that's the way they are separated in the string
Run Code Online (Sandbox Code Playgroud)
记录
NSLog(@"%@", array);
Run Code Online (Sandbox Code Playgroud)

这是控制台返回的内容
yan*_*kun 11
NSMutableArray *chars = [[NSMutableArray alloc] initWithCapacity:[theString length]];
for (int i=0; i < [theString length]; i++) {
NSString *ichar = [NSString stringWithFormat:@"%C", [theString characterAtIndex:i]];
[chars addObject:ichar];
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
19291 次 |
| 最近记录: |