在同一分隔符上多次拆分NSString

我目前收到一个这样的string:

@"Sam|26,Hannah|22,Adam|30,Carlie|32,Jan|54" 

我正在像这样分裂它:

 testArray = [[NSArray alloc] init]; NSString *testString = [[NSString alloc] initWithFormat:@"Sam|26,Hannah|22,Adam|30,Carlie|32,Jan|54,Steve|56,Matty|24,Bill|30,Rob|30,Jason|33,Mark|22,Stuart|54,Kevin|30"]; testArray = [testString componentsSeparatedByString:@","]; dict = [NSMutableDictionary dictionary]; for (NSString *s in testArray) { testArray2 = [s componentsSeparatedByString:@"|"]; [dict setObject:[testArray2 objectAtIndex:1] forKey:[testArray2 objectAtIndex:0]]; } 

我现在会收到一个像这样的string:

 @"Sam|26|Developer,Hannah|22|Team Leader,Adam|30|Director,Carlie|32|PA,Jan|54|Cleaner" 

我可以(以及如何)使用与上面相同的方法多次使用“|”分隔string 分隔器?

下面一行…

 testArray2 = [s componentsSeparatedByString:@"|"]; 

将导致该数组现在包含3个项目,而不是2 …..不需要再次分割!

这样做。

 NSString *testString = [[NSString alloc] initWithFormat:@"Sam|26,Hannah|22,Adam|30,Carlie|32,Jan|54,Steve|56,Matty|24,Bill|30,Rob|30,Jason|33,Mark|22,Stuart|54,Kevin|30"]; NSArray *testArray = [testString componentsSeparatedByString:@","]; NSLog(@"%@",testArray); for(int i=0;i<[testArray count];i++){ NSString *str=[testArray objectAtIndex:i]; NSArray *aa=[str componentsSeparatedByString:@"|"]; NSLog(@"%@",aa); } 

无需保留arrays。