A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 ★彬★卍囧神 于 2014-9-18 22:53 编辑

花了一些时间总结了NSString常用的方法,希望对大家学习上有用!!!
void string(){
    // 创建一个空的字符串
    NSString *str = [[NSString alloc] init];
    str = @"asdasda";
    // 创建一个可传参数的字符串
    NSString *stra = [NSString stringWithFormat:@"wangbin"];
    stra = nil;
    // C语言转成NSString
    char *s = "LOVE";
    NSString *strc = [[NSString alloc] initWithUTF8String:s];

    NSLog(@"%@", strc);

    // 是否合另一个字符串相同
    NSString *str1 = @"JIAYOU!!!";
    NSString *str2 = @"JIAYOU!!!";
    [str1 isEqualToString:str2];

    NSString *stt = @"wangbin";
    [stt uppercaseString]; // 转大写
    [stt lowercaseString]; // 转小写
    [stt capitalizedString]; // 首字母
    [stt hasPrefix:@"1213"]; // 判断前缀是以什么开头
    [stt hasSuffix:@"741"]; // 判断后缀是以什么结尾

    NSRange range = [stt rangeOfString:@"bin"]; // 查找范围
    // 将结构体包装成数组
    NSString *nsstr = NSStringFromRange(range);
    NSLog(@"%@", nsstr);

    stt = @"jiayou!!!";
    NSLog(@"%@", [stt substringFromIndex:1]); // 截取当前位置到尾部
    NSLog(@"%@", [stt substringToIndex:1]); // 截取头部到当前位置-1
    NSLog(@"%@", [stt substringWithRange:NSMakeRange(3,3)]); // 截取指定位置结果包含这个位置的元素
#pragma mark -字符串中文件路径有关方法
    // 1.加上.后缀
    NSString *Path = @"binbin";
    NSString *addPath = [Path stringByAppendingPathExtension:@"txt"];
    // 输出binbin.txt
    NSLog(@"%@", addPath);

    // 2.添加全路径
    NSString *Path1 = @"~/NSData.txt";
    NSString *absolutePath = [Path1 stringByExpandingTildeInPath];
    // 输出absolutePath:/Users/binbin/NSData.txt
    NSLog(@"absolutePath:%@",absolutePath);

    // 3.去掉全路径
    NSLog(@"Path:%@",[absolutePath stringByAbbreviatingWithTildeInPath]);
    // 输出Path:~/NSData.txt

    // 4.文件扩展名
    NSString *str11 = @"~/binbin.txt";
    NSLog(@"%@", [str11 pathExtension]); // 输出txt
#pragma mark 字符串的类型转换
    // 将NSString转成基础类型
    NSString *strr1 = @"100";
    int a = [strr1 intValue];
    const char *s1 = [strr1 UTF8String];
    NSLog(@"%d-%s", a, s1);

    // 将NSString转成数组,数组转成字符串
    NSString *strr2 = @"wo shi hao ren";
    NSArray *arr = [strr2 componentsSeparatedByString:@" "];
    NSLog(@"%@", arr);
    NSString * strr3 = [arr componentsJoinedByString:@"-"];
    NSLog(@"%@", strr3);
#pragma mark -字符串的拼接
    // 字符串的拼接
    NSString *strr4 = @"zhang";
    NSString *strr5 = @"san";
    NSString *strr6 = [NSString stringWithFormat:@"%@%@", strr4, strr5];
    NSString *strr7 = [strr4 stringByAppendingString:strr5];
    NSString *strr8 = [strr4 stringByAppendingFormat:@"%@", strr5];
    NSLog(@"%@-%@-%@",strr6, strr7, strr8);
#pragma mark -字符串的比较

    // compare比较方法
    NSString *str3 = @"JIAYOU!!!";
    NSString *str4 = @"JIAYOU!!!";
    [str3 compare:str4];
    // NSOrderedAscending = -1L, NSOrderedSame, NSOrderedDescending

    //不考虑大小写比较字符串第一种
    NSString *astring01 = @"this is a String!";
    NSString *astring02 = @"This is a String!";
    BOOL result = [astring01 caseInsensitiveCompare:astring02];
    NSLog(@"result:%d",result);


    //不考虑大小写比较字符串第二种2
    NSString *astring03 = @"abc";
    NSString *astring04 = @"bbc";
    BOOL result1 = [astring03 compare:astring04
                              options:NSLiteralSearch];
    NSLog(@"result1:%d",result1);

    /*
     NSCaseInsensitiveSearch:不区分大小写比较
     NSLiteralSearch:进行完全比较(比较首元素)
     NSNumericSearch:进行完全比较。
     */

#pragma mark -可变字符串一些方法
    //可变字符串对象:NSMutableString继承至string
    NSMutableString *mutableString1 = [[NSMutableString alloc]initWithFormat:@"abc"];
    NSLog(@"%@",mutableString1);
    //对可变字符串赋值
    [mutableString1 setString:@"qianfeng"];
    NSLog(@"%@",mutableString1);
    //插入一个字符串,在指定下标(不要越界)位置插入NSString类型字符
    [mutableString1 insertString:@"...xyz" atIndex:3];
    NSLog(@"%@",mutableString1);
    //在字符串末尾追加字符串
    [mutableString1 appendString:@"123"];
    NSLog(@"%@",mutableString1);
    //替换
    NSRange range2={1,3};
    [mutableString1 replaceCharactersInRange:range2 withString:@"efg"];
    NSLog(@"%@",mutableString1);
    //删除
    [mutableString1 deleteCharactersInRange:range2];
    NSLog(@"%@",mutableString1);

}
下面是可复制的代码
  1. void string(){
  2.     // 创建一个空的字符串
  3.     NSString *str = [[NSString alloc] init];
  4.     str = @"asdasda";
  5.     // 创建一个可传参数的字符串
  6.     NSString *stra = [NSString stringWithFormat:@"wangbin"];
  7.     stra = nil;
  8.     // C语言转成NSString
  9.     char *s = "LOVE";
  10.     NSString *strc = [[NSString alloc] initWithUTF8String:s];

  11.     NSLog(@"%@", strc);

  12.     // 是否合另一个字符串相同
  13.     NSString *str1 = @"JIAYOU!!!";
  14.     NSString *str2 = @"JIAYOU!!!";
  15.     [str1 isEqualToString:str2];
  16.    
  17.     NSString *stt = @"wangbin";
  18.     [stt uppercaseString]; // 转大写
  19.     [stt lowercaseString]; // 转小写
  20.     [stt capitalizedString]; // 首字母
  21.     [stt hasPrefix:@"1213"]; // 判断前缀是以什么开头
  22.     [stt hasSuffix:@"741"]; // 判断后缀是以什么结尾
  23.    
  24.     NSRange range = [stt rangeOfString:@"bin"]; // 查找范围
  25.     // 将结构体包装成数组
  26.     NSString *nsstr = NSStringFromRange(range);
  27.     NSLog(@"%@", nsstr);
  28.    
  29.     stt = @"jiayou!!!";
  30.     NSLog(@"%@", [stt substringFromIndex:1]); // 截取当前位置到尾部
  31.     NSLog(@"%@", [stt substringToIndex:1]); // 截取头部到当前位置-1
  32.     NSLog(@"%@", [stt substringWithRange:NSMakeRange(3,3)]); // 截取指定位置结果包含这个位置的元素
  33. #pragma mark -字符串中文件路径有关方法
  34.     // 1.加上.后缀
  35.     NSString *Path = @"binbin";
  36.     NSString *addPath = [Path stringByAppendingPathExtension:@"txt"];
  37.     // 输出binbin.txt
  38.     NSLog(@"%@", addPath);
  39.    
  40.     // 2.添加全路径
  41.     NSString *Path1 = @"~/NSData.txt";
  42.     NSString *absolutePath = [Path1 stringByExpandingTildeInPath];
  43.     // 输出absolutePath:/Users/binbin/NSData.txt
  44.     NSLog(@"absolutePath:%@",absolutePath);
  45.    
  46.     // 3.去掉全路径
  47.     NSLog(@"Path:%@",[absolutePath stringByAbbreviatingWithTildeInPath]);
  48.     // 输出Path:~/NSData.txt
  49.    
  50.     // 4.文件扩展名
  51.     NSString *str11 = @"~/binbin.txt";
  52.     NSLog(@"%@", [str11 pathExtension]); // 输出txt
  53. #pragma mark 字符串的类型转换
  54.     // 将NSString转成基础类型
  55.     NSString *strr1 = @"100";
  56.     int a = [strr1 intValue];
  57.     const char *s1 = [strr1 UTF8String];
  58.     NSLog(@"%d-%s", a, s1);
  59.    
  60.     // 将NSString转成数组,数组转成字符串
  61.     NSString *strr2 = @"wo shi hao ren";
  62.     NSArray *arr = [strr2 componentsSeparatedByString:@" "];
  63.     NSLog(@"%@", arr);
  64.     NSString * strr3 = [arr componentsJoinedByString:@"-"];
  65.     NSLog(@"%@", strr3);
  66. #pragma mark -字符串的拼接
  67.     // 字符串的拼接
  68.     NSString *strr4 = @"zhang";
  69.     NSString *strr5 = @"san";
  70.     NSString *strr6 = [NSString stringWithFormat:@"%@%@", strr4, strr5];
  71.     NSString *strr7 = [strr4 stringByAppendingString:strr5];
  72.     NSString *strr8 = [strr4 stringByAppendingFormat:@"%@", strr5];
  73.     NSLog(@"%@-%@-%@",strr6, strr7, strr8);
  74. #pragma mark -字符串的比较
  75.    
  76.     // compare比较方法
  77.     NSString *str3 = @"JIAYOU!!!";
  78.     NSString *str4 = @"JIAYOU!!!";
  79.     [str3 compare:str4];
  80.     // NSOrderedAscending = -1L, NSOrderedSame, NSOrderedDescending
  81.    
  82.     //不考虑大小写比较字符串第一种
  83.     NSString *astring01 = @"this is a String!";
  84.     NSString *astring02 = @"This is a String!";
  85.     BOOL result = [astring01 caseInsensitiveCompare:astring02];
  86.     NSLog(@"result:%d",result);
  87.    
  88.    
  89.     //不考虑大小写比较字符串第二种2
  90.     NSString *astring03 = @"abc";
  91.     NSString *astring04 = @"bbc";
  92.     BOOL result1 = [astring03 compare:astring04
  93.                               options:NSLiteralSearch];
  94.     NSLog(@"result1:%d",result1);
  95.    
  96.     /*
  97.      NSCaseInsensitiveSearch:不区分大小写比较
  98.      NSLiteralSearch:进行完全比较(比较首元素)
  99.      NSNumericSearch:进行完全比较。
  100.      */
  101.    
  102. #pragma mark -可变字符串一些方法
  103.     //可变字符串对象:NSMutableString继承至string
  104.     NSMutableString *mutableString1 = [[NSMutableString alloc]initWithFormat:@"abc"];
  105.     NSLog(@"%@",mutableString1);
  106.     //对可变字符串赋值
  107.     [mutableString1 setString:@"qianfeng"];
  108.     NSLog(@"%@",mutableString1);
  109.     //插入一个字符串,在指定下标(不要越界)位置插入NSString类型字符
  110.     [mutableString1 insertString:@"...xyz" atIndex:3];
  111.     NSLog(@"%@",mutableString1);
  112.     //在字符串末尾追加字符串
  113.     [mutableString1 appendString:@"123"];
  114.     NSLog(@"%@",mutableString1);
  115.     //替换
  116.     NSRange range2={1,3};
  117.     [mutableString1 replaceCharactersInRange:range2 withString:@"efg"];
  118.     NSLog(@"%@",mutableString1);
  119.     //删除
  120.     [mutableString1 deleteCharactersInRange:range2];
  121.     NSLog(@"%@",mutableString1);

  122. }
复制代码
最后说一句:第三批的朋友加油!!!

15 个回复

倒序浏览
朱亚男 来自手机 中级黑马 2014-9-19 10:16:50
沙发
不错!值得收藏!
回复 使用道具 举报
朱亚男 来自手机 中级黑马 2014-9-19 10:19:55
藤椅
加油!。。,
回复 使用道具 举报
哇哦!!!大赞,值得收藏
回复 使用道具 举报
学习中。
回复 使用道具 举报
好厉害啊。你的分数好多了。
回复 使用道具 举报
哈哈,版主的帖子必须顶起来
回复 使用道具 举报
朱亚男 发表于 2014-9-19 10:16
不错!值得收藏!

谢谢
回复 使用道具 举报
zhuiyi007 发表于 2014-9-19 13:14
哈哈,版主的帖子必须顶起来

我很水的.
回复 使用道具 举报
王庆功 发表于 2014-9-19 12:16
好厉害啊。你的分数好多了。

英雄不问出初,才子不问分数:(.
回复 使用道具 举报
smilezsm 发表于 2014-9-19 10:31
哇哦!!!大赞,值得收藏

有用就好哈哈
回复 使用道具 举报
★彬★卍囧神 发表于 2014-9-19 18:10
英雄不问出初,才子不问分数.

yeah.当你需要的时候,你就会关注了。加油
回复 使用道具 举报
版主,你看你,就在这里嘚瑟啊。以后有什么东西就多嘚瑟嘚瑟啊。谢了
回复 使用道具 举报
感谢版主的用心总结{:3_67:}
回复 使用道具 举报
版本用心良苦,我等感激不尽:handshake
回复 使用道具 举报
陆习康 发表于 2014-9-20 02:13
版主,你看你,就在这里嘚瑟啊。以后有什么东西就多嘚瑟嘚瑟啊。谢了

好熟悉的名字..
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马