美文网首页
iOS 将没有分割标识的字符串,分割成单个字符串

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

作者: 达若漠沙 | 来源:发表于2018-07-20 15:34 被阅读26次

    在开发过程中,前后台交互,软硬件交互过程中,经常会使用字符串进行传值。有时为了节省字段,一段字符串中可能包含多个信息位,在这种情况下,获取不同信息位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 将没有分割标识的字符串,分割成单个字符串

          本文链接:https://www.haomeiwen.com/subject/tfqqmftx.html