iOS 将没有分割标识的字符串,分割成单个字符串

在开发过程中,前后台交互,软硬件交互过程中,经常会使用字符串进行传值。有时为了节省字段,一段字符串中可能包含多个信息位,在这种情况下,获取不同信息位value前,就必须要进行字符串分割。常见的分割方法是添加标志符,比如:FF、00、##、*...

   NSString *testStr1 = @"12=34=56";
   NSArray * array1 = [testStr1 componentsSeparatedByString:@"="];
   NSLog(@"%@",array1);

当然,如果字符串中没有分隔符改怎么办呢?没关系,办法也很简单,使用NSRange 轻松完成分割:

-(NSArray *)getSubString:(NSString*)str {
    
    NSMutableArray *textArray = [NSMutableArray array];
    for (NSInteger i = 0; i < str.length; i++) {
        NSRange   range =  NSMakeRange(i, 1);
        NSString *subStr = [str substringWithRange:range];
        [textArray addObject:subStr];
    }
    return textArray;
    
}

测试一把

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    NSString *testStr = @"123456";
    NSArray *array = [self getSubString:testStr];
    NSLog(@"%@",array);
    
   NSString *testStr1 = @"12=34=56";
   NSArray * array1 = [testStr1 componentsSeparatedByString:@"="];
   NSLog(@"%@",array1);

}

打印结果如下:

2018-07-20 15:29:46.805659+0800 StringTest[7749:168304] (
1,
2,
3,
4,
5,
6
)
2018-07-20 15:29:46.805874+0800 StringTest[7749:168304] (
12,
34,
56
)

你可能感兴趣的:(iOS 将没有分割标识的字符串,分割成单个字符串)