NSString 字符串处理:截取、分隔、遍历

一. 截取字符串

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 *)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]);
    }

你可能感兴趣的:(NSString 字符串处理:截取、分隔、遍历)