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

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

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

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

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

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

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

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

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

objectivec 复制代码
#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;
}

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

objectivec 复制代码
    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:@""];

objectivec 复制代码
//数组转为字符串
NSString * arrayToStr = [valueArray componentsJoinedByString:@""];
相关推荐
SameX1 小时前
独立开发一个把走过的路变成 km² 的 App,聊聊 25m 网格和后台 GPS 的坑
ios
XD7429716363 小时前
科技早报晚报|2026年4月30日:Agent 安全壳、浏览器 iOS 测试台与可穿戴数据 API,今天更值得看的 3 个技术机会
科技·ios·开源项目·科技新闻·开发者工具
看海的四叔3 小时前
【SQL】SQL-管好你的字符串
大数据·数据库·hive·sql·数据分析·字符串
北京自在科技5 小时前
Find Hub App 小更新
android·ios·安卓·findmy·airtag
2501_915921436 小时前
HTTPS前端劫持 新一代流量劫持解决方案
前端·网络协议·ios·小程序·https·uni-app·iphone
911hzh6 小时前
Flutter WebRTC iOS 原理解析:从 getUserMedia 到 Texture,讲清视频采集、纹理渲染与远端通话链路
flutter·ios·webrtc
软泡芙7 小时前
【iOS】 开发入门指南
ios
水中加点糖7 小时前
ios中使用DockKit和CoreML实现自定义目标的自动跟随(一)
目标检测·ios·目标跟踪·硬件控制·dockkit
2501_915909067 小时前
iOS应用签名的三种方法全解析:从官方到第三方工具
android·ios·小程序·https·uni-app·iphone·webview
美狐美颜SDK开放平台1 天前
多场景美颜SDK解决方案:直播APP(iOS/安卓)开发接入详解
android·人工智能·ios·音视频·美颜sdk·第三方美颜sdk·短视频美颜sdk