如何分隔包含","的字符串和" /"在不同的Scenerio

时间:2015-09-16 11:51:27

标签: ios objective-c nsstring

我想拨打一个来自JSON的号码。但在一个场景中,","正在进入这一数据和另一种情况" /"来了。我如何给出分离数据的条件?

这是我的代码

if ([strNumbers containsString:@"/"]) {
        arrOfNumber = [strNumbers componentsSeparatedByString:@"/"];

}
else if([strNumbers containsString:@","])
{
arrOfNumber = [strNumbers componentsSeparatedByString:@","];
}

当它进入if条件时,应用程序会崩溃。

3 个答案:

答案 0 :(得分:1)

试试这个。

NSString *string = @"cat,dog/home ,versity";
NSCharacterSet *charSet = [NSCharacterSet characterSetWithCharactersInString:@",/"];
NSArray *array = [string componentsSeparatedByCharactersInSet:charSet];
NSLog(@"array:%@",array);

答案 1 :(得分:0)

你可以这样使用它。

if ([strNumbers isKindOfClass:[NSString Class]])
{
     if ([strNumbers containsString:@"/"]) 
     {
        arrOfNumber = [strNumbers componentsSeparatedByString:@"/"];
     }
     else if([strNumbers containsString:@","])
     {
        arrOfNumber = [strNumbers componentsSeparatedByString:@","];
     }
}

希望这有帮助。

答案 2 :(得分:0)

ContainsString方法不支持ios7。 我将“/”替换为“,”。  strNumbers = [strNumbers stringByReplacingOccurrencesOfString:@“/”withString:@“,”]; 现在它正常工作