NSString字符串的截取,拼接,匹配,反转处理

来源:互联网 发布:3d数学基础游戏编程 编辑:程序博客网 时间:2024/05/16 19:52

想把知识点整理一下,今天把字符串的各种处理方式列出来,包括了字符串的各种方式,注释里面有解释清楚用法,有不足的地方大家请指点。

//截取

     NSString * string =@"hellowrold";

    string = [string substringToIndex:3];//截取下标3之后的字符串

    NSLog(@"从第几个截取下标后:%@",string);

    结果: [2541:141682] 从第几个截取下标后:hel


    NSString  *a =@"i like long dress";

    NSString *b = [asubstringFromIndex:4];

    NSLog(@"截取第几个后值:%@",b);

        结果:截取第几个后值:ke long dress


    NSString *url =@"http://www.baidu.com";

    NSRange range =NSMakeRange(3,7);//指定截取从三到7

    NSString* prefix = [urlsubstringWithRange:range];

    NSLog(@"prefix is:%@",prefix);

        结果:prefix is:p://www


 2 //匹配

    NSString * tr =@"fhajhjhggaa";

    NSRange  range1 = [trrangeOfString:@"a"];//匹配的到的下标

    NSLog(@"rang:%@",NSStringFromRange(range1));


//分隔

    NSString* string2 =@"sdfsfsfsAdfsdf";

    NSArray *array = [string2componentsSeparatedByString:@"A"];//从字符A中分隔成2个元素的数组

    NSLog(@"array:%@",array);//结果是adfsfsfsdfsdf


4  //拼接 

    NSString *  str2 = [stringstringByAppendingFormat:@"%@",string2];

    NSLog(@"拼接:%@",str2);


5   //反转

      //反转先建立一个category,NSString+Reverse,如何建立类别不用我截图吧 

      注意category只能扩展方法不能扩展属性

     //在.h文件里写一个方法

    @interfaceNSString (Reverse)

    -(id)reverseString;

       //在.m文件里实现方法

    @implementation NSString (Reverse)

    -(id)reverseString{

    NSUInteger len = [selflength];

    NSMutableString * returnStr = [NSMutableStringstringWithCapacity:len];

    while (len) {

        //unichar是两字节长的char,代表unicode的一个字符

       //unichar初始化可以采用文字编码的方式初始化,因为c语言中两个单引号只能用于char

        //unichar a = 0x0100 但是这样太麻烦,采用下面变态方法

        unichar c = [selfcharacterAtIndex:--len];//表示有几个字节

        [returnStr appendString:[NSStringstringWithFormat:@"%c",c]];

    }

    return returnStr;

    

}

      //然后再controller的你需要实现的地方实现方法

     #import "NSString+Reverse.h"

    NSString* str =@"hello world";

    NSString* reverseStr= [str reverseString];

    NSLog(@"反转-------%@",reverseStr);





阅读全文
0 0
原创粉丝点击