一. 截取字符串
1.-substringToIndex:// 从字符串的开头一直截取到指定的位置,但不包括该位置的字符
NSString *str = @"asdfghjkl";
str = [str substringToIndex:4];//截取下标4之前的字符串
NSLog(@"截取的值为:%@",str);//截取的值为:asdf
2.-substringFromIndex: //以指定位置开始(包括指定位置的字符),并包括之后的全部字符
NSString *str = @"asdfghjkl";
str = [str substringFromIndex:3];//截取下标3之后的字符串
NSLog(@"截取的值为:%@",str);//截取的值为:fghjkl
3.-substringWithRange: //按照所给出的位置(包括该位置的字符),长度,任意地从字符串中截取子串
NSString *str = @"asdfghjkl";
NSRange range = NSMakeRange(0, 4);
str = [str substringWithRange:range];//截取下标为0长度为4的字符串
NSLog(@"截取的值为:%@",str);//截取的值为:asdf
二. 分隔字符串
1.- (NSArray<NSString *> *)componentsSeparatedByString:(NSString *)separator//根据你选定的NSString(separator)分割符来拆分你想要拆分的字符串,分割之后是一个数组,你需要哪一部分就取哪一部分。
NSString *str = @"asd fgh jkl";
NSArray *arr = [str componentsSeparatedByString:@" "];//通过空格符来分隔字符串
NSLog(@"分隔的数组为:%@",arr);//分隔的数组为:(asd,fgh,jkl)
二. 遍历字符串
1.通过查找的方式来遍历(这方式适合所有格式的子符串,推荐使用)
NSString *str =@"asdfghjkl1234欢迎";
NSString *temp = nil;
for(int i =0; i < [str length]; i++) {
temp = [str substringWithRange:NSMakeRange(i, 1)];
NSLog(@"第%d个字是:%@",i,temp);
}
2.通过遍历字符的方式遍历字符串(只适合不包含中文的字符串)
NSString *str =@"asdfghjkl1234欢迎";
for(int i =0; i < [str length]; i++) {
NSLog(@"第%d个字是:%c",i,[str characterAtIndex:i]);
}