如何用两个特殊字符分隔NSString?

时间:2014-01-15 21:54:07

标签: nsstring nsarray

我有一个字符串,需要将其拆分为多个字符串。 例如,这是我的字符串:

#titleone%& apple *#titletwo%& honey *

每次读取“#”我需要它将字符串保存在数组中并在读取“%”时停止。每次阅读“&”我需要将字符串保存在另一个数组中,并在读取“*”时停止。 到目前为止,我已经完成了这个

NSString* foo = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
NSArray* stringComponents = [foo componentsSeparatedByString:@"#"];
NSArray* otherstringComponents = [foo componentsSeparatedByString:@"%"];

我只需要知道如何在每次读取某个字符时添加到数组,并在每次读取另一个字符时停止。 或者,如果有其他方式来完成这项工作,那么我将非常感激。

1 个答案:

答案 0 :(得分:0)

您最好使用NSScanner并扫描到您的起始字符集(使用scanUpToCharactersFromSet:intoString:),然后检查是哪个起始字符来决定如何处理从扫描中获得的字符串到最后的角色。