本篇文章主要阐述IOS字符串分割,截取,转换,拼接的一些逻辑,看是否含有分割符,主要介绍了两种方式,一种没有任何分割符的数据,一个带有分割符的数据。
一:首先,这里是没有分割符的一串数据,比如底层传递来的mac地址;
如:“1f55555500d5”
1,进行分割,每两个一组;
NSString *toIndexstring = “1f55555500d5”;
NSMutableArray *arr = [NSMutableArray array];
for (int i=0; i<toIndexstring.length; i++) {
if (i%2==1) {
continue;
}
NSInteger num = 2;
if (toIndexstring.length<i+2) {
num = 1;
}
NSRange subRange = NSMakeRange(i, num);
NSString *newStr = [toIndexstring substringWithRange:subRange];
[arr addObject:newStr];
}
NSLog(@"aa-s%@",arr);
2,把数据分割之后,要进行去掉最后一位,给他们交换位置,再进行字符串拼接。
NSString *arre0 = [arr objectAtIndex:0];
NSString *arre1 = [arr objectAtIndex:1];
NSString *arre2 = [arr objectAtIndex:2];
NSString *arre3 = [arr objectAtIndex:3];
NSString *arre4 = [arr objectAtIndex:4];
NSString *arre5 = [arr objectAtIndex:5];
NSString *rssiConlba = [NSString stringWithFormat:@"%@:%@:%@:%@:%@:%@",arre5,arre4,arre3,arre2,arre1,arre0];
NSLog(@"name-ang%@",arre0);
cell.mDeviceAddreLb.text = rssiConlba;
最终的结果为:d5:55:55:55:00:1f
二:有分割符的字符串,进行分割,拼接,这比上面的还要简单些了。
通过特殊字符进行判断,如:“【】,A-Z,空格,逗号,分号 “等,从而进行分割需要的数据值;
1,截取
NSString *string = @"ABCDEFG";
//截取下标 [0,3) 。即下标3之前的字符串,不包含第3位
NSString *str1 = [string substringToIndex:3];
输出结果为:ABC
//截取下标[2,length-1]。即下标2之后的字符串,包含第2位
NSString *str2 = [string substringFromIndex:2];
输出结果为:CDEFG
//从第3位开始截取一个长度为4的字符串
NSString *str3 = [string substringWithRange:NSMakeRange(3,4)];
输出结果为:DEFG
//定位字符串
NSRange range = [string rangeOfString: @"ABCD"];
输出结果 range.location=0 ; range.length = 4 ;
2,分割
NSString *string =@"CBA?NBA";
NSArray *array = [string componentsSeparatedByString:@"?"]; //从字符?中分隔成2个元素的数组
NSLog(@"array:%@",array); //结果是CBA和NBA
3,拼接
NSString *str =@"www";
NSString * str1 = [str stringByAppendingString:@".jianshu.com"];
NSString * str2 = [NSString stringWithFormat:@"%@%@", str,@".jianshu.com"];
//结果为:www.jianshu.com
此功能为OC字符串分割,截取,转换,拼接部分,就阐述到此了。希望可以帮助到各位初学者,如果觉得深有意义,别忘了点赞哦,哈哈,下期见!~