iOS 将字符串分割成单个字符| 字符串转成数组

iOS开发中我们常常需要对字符串进行出去,例如分割,通常都是有个参照物进行分割

例如: https://www.xxx.xxx?name=zhangshan

iOS需要取出zhangsan的值,就需要用参照物“name=”进行分割,右边为张三,左边为其他字符串

OC自带的分割api是 componentsSeparatedByString:@"" , 以下为代码:

 NSString * str = @"https://www.xxx.xxx?name=zhangshan";
 NSArray * array = [str componentsSeparatedByString:@"name="];
 NSString * nameStr = array[1];

但是如果一个字符串要分割成N个字符,且没有分割参照物,这个怎么办呢?

例如:将字符串 abcdefg 分割成单个字符. OC中没有自带的api (PS:swift 中有把字符串转成数组的自带方法)

我们可以借助NSRange 的方法进行单个切割:代码如下

#pragma mark 将字符串分割成单个字符
- (NSMutableArray *)separateString:(NSString *)str
{
    NSMutableArray * resultArray = [[NSMutableArray alloc]init];
    
    for (int i = 0; i < str.length ; i ++)
    {
        NSRange range = NSMakeRange(i, 1);
        NSString * singleStr = [str substringWithRange:range];
        //将分割好的单个字符装进数组
        [resultArray addObject:singleStr];
    }
    
    return  resultArray;
}

然后传入字符串就可以分割出来了

    NSString * valueStr = @"abcdefg";
    NSMutableArray * valueArray = [self separateString:valueStr];
    NSLog(@"valueArray==%@",valueArray);
    /*
     valueArray的输出为
     valueArray==(
         a,
         b,
         c,
         d,
         e,
         f,
         g
     )
     */

得到单个字符的数组,就有条件进行你想要的操作了!!!

PS分割字符串,本质就是把String转成Array;

这里额外讲一个Array转成String 的方法:

NSString * arrayToStr = [valueArray componentsJoinedByString:@""];

//数组转为字符串
NSString * arrayToStr = [valueArray componentsJoinedByString:@""];

相关推荐

  1. iOS 字符串分割单个字符| 字符串数组

    2024-04-23 19:30:03       28 阅读
  2. hutool字符串Json数组

    2024-04-23 19:30:03       61 阅读
  3. 复杂的数据类型如何字符串

    2024-04-23 19:30:03       40 阅读
  4. 前端json字符串转换htmlGET字符串

    2024-04-23 19:30:03       31 阅读
  5. 字符数组(字符串):单词计数

    2024-04-23 19:30:03       35 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-23 19:30:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-23 19:30:03       100 阅读
  3. 在Django里面运行非项目文件

    2024-04-23 19:30:03       82 阅读
  4. Python语言-面向对象

    2024-04-23 19:30:03       91 阅读

热门阅读

  1. flink on k8s部署

    2024-04-23 19:30:03       34 阅读
  2. C# winform 阿特拉斯fp6000拧紧枪开发

    2024-04-23 19:30:03       37 阅读
  3. Go学习路线

    2024-04-23 19:30:03       30 阅读
  4. Springboot获取实时天气

    2024-04-23 19:30:03       39 阅读
  5. is_some()

    2024-04-23 19:30:03       35 阅读
  6. milvus querynode启动源码分析

    2024-04-23 19:30:03       37 阅读