2011-10-10 113 views
5

如何字符串转换为阵列中的目标C.即我有一个字符串,如何将字符串转换为目标C中的数组?

NSString *str = @"Hi,How r u"; 

这应被转换成一个数组*的NSMutableArray ARR,其中在

ARR [0 ] = “您好”
ARR [1] = “”
ARR [2] = “如何”
ARR [3] = “R”
ARR [4] = “U”

任何人都可以帮助解决这个问题的想法。

回答

11
NSString *[email protected]"Hi,How r u"; 
NSArray *arr = [str componentsSeparatedByString:@","]; 
NSString *strSecond = [arr objectAtIndex:1]; 

NSMutableArray *arrSecond = [strSecond componentsSeparatedByString:@" "]; 
NSString *strHow = [arr objectAtIndex:0]; 
NSString *strAre = [arr objectAtIndex:1]; 
NSString *strYou = [arr objectAtIndex:2]; 

[arr removeObjectAtIndex:1]; 
[arr addObject:@","]; 
[arr addObject:strHow]; 
[arr addObject:strAre]; 
[arr addObject:strYou]; 

ARR是所需的阵列。

0

您可以使用NSString方法componentsSeparatedByString。看看参考here

+0

我需要逗号(,)也存储在数组中。在这种情况下,我不能使用componentsSeparatedByString。 – shasha

5

我想this link会帮助你。

NSString *str = @"Hi,How r u"; 
NSArray *listItems = [str componentsSeparatedByString:@","]; 
1

试试这个

NSString *[email protected]"Hi,How r u"; 
    NSMutableArray *arary = [[NSMutableArray alloc] initWithArray:[str2 componentsSeparatedByCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@", "]]]; 
    NSLog(@"%@",arary); 

,如果你想,作为一个对象

NSString *[email protected]"Hi,How r u"; 
    str2 = [str2 stringByReplacingOccurrencesOfString:@"," withString:@" , "]; 
    NSMutableArray *arary = [[NSMutableArray alloc] initWithArray:[str2 componentsSeparatedByString:@" "]]; 
    NSLog(@"%@",arary); 
3

你要做的,

NSString *str = @"Hi,How r u"; 
NSArray *arr = [str componentsSeparatedByString:@" "]; 

而且,为了使这个像您期望的工作,应该有"Hi,""How"之间的white-space。你的字符串应该看起来像@"Hi, How r u"

相关问题