字符串

 字符串分为可变字符串和不可变字符串

 不可变字符串

  1.  不可变字符串的初始化

    NSString *string1 = [[NSString alloc] init];

           NSString *string = [NSString stringA];

           NSString *string =[ [NSString alloc] initWithString:string1];

           NSString *string = @“string2”;

   2.字符串的处理

    1)给字符串赋值

      例如:NSString *string = [NSString stringA];

        string = @"huahua";

    2)拼接字符串。不可变字符串的拼接是在原来的字符串之上  再拼接一个字符串  生成一个新的字符串

              (1)方法:stringWithFormat

         例如:int age = 20; NSString *name = @“李明”;

                      NSString *info = [NSString stringWithFormat:@“%@刚刚满%d岁”,name,age]; 

      (2) 方法:stringByAppendingString

         NSString *ss = @"我是";

           NSString *ss4 = [ss stringByAppendingFormat:@"%@ 牛人",ss2];

         拼接后的结果为“我是牛人”

    3)截取字符串

      (1)从哪个位置开始截取字符串。使用的方法是:substringFromIndex

         例如:NSString *message = @“中华人民共和国!”;

                                 从 中华  后面开始截取上面的字符串

                                 NSString *newString = [message substringFromIndex:2];

    

         (2)截取字符串到哪个位置。使用的方法是:substringToIndex 

                       例如:截取1)里的字符串到  民共 

                               NSString *newString0 = [message substringToIndex:5];

                 (3)截取字符串  从一个位置到另一个位置。使用的方法是:substringWithRange

                           在这里要使用结构体  我们要设置结构体的位置

                           NSRang rang;

            rang.location = 5/*(你想截取的初始位置)*/;

                     rang.length = 3/*(你截取的长度)*/;

                       如:我要截取message里的人民共和

                       代码:NSString *newString1 = [message substringWithRang:rang];

       

         (4) 把字符串通过指定字符分割成数组

                      使用方法 :componentsSeparatedByString

                      如 :将message里的以“民”分割成两个数组

                       代码:NSString *fenge = [message   componentsSeparatedByString:@“民”];

                  (5)把字符串里所有的英文字母转成大写   方法:uppercaseString 

                          例如:NSString *str = @“bRbsdi”;

                            NSLog(@“%@”,str.uppercaseString);

        (6) 把所有英文转换成小写    方法: lowercaseString

                      用法同上

                     (7)把首字母转成大写   方法 :capitalizedString

                        用法同(5)

        (8)  判断字符串  是否包含某个字符串。方法:rangeOfString:

       例如:判断下面字符串是否含有”老虎“,有就输出该字符串,否则输出”骗人~~~~~“

          NSString *sss = @"上山打老虎跑了";

               NSRange range119 = [sss rangeOfString:@"老虎"];

               if (range119.location != NSNotFound) {

                    NSLog(@"%@",sss); 

           }else{

                    NSLog(@"骗人~~~~~“);

         }

        (9)字符串以什么开始(就是说字符串的头部包含什么内容)方法:hasPrefix:

          例如:判断sss字符串是否是以上山开头,有就输出该字符串,否则输出”没有“

             if ([sss hasPrefix:@"上山"] != NO) {

                      NSLog(@"%@",sss);

                }else{

                     NSLog(@"没有");

                }

       (10)字符串以什么结束 方法:hasSuffix:

          if ([sss hasSuffix:@"跑了"] != NO) {

                    NSLog(@"成功");

                  }else{

                    NSLog(@"没有");

               }

可变字符串

1.初始化

  NSMutableString *sss5 = [[NSMutableString alloc]init];

2.使用可变字符串时 有扩展出来的两个方法

  在原来的字符串的基础上有添加了一个字符串 与原来的字符串  合成一个字符串(还是原来字符串的对象)

   1)把指定位置的字符串替换成另一个字符串

     NSMutableString *sss5 = [[NSMutableString alloc]initWithString:@"bruce"];

           NSRange range110;

           range110.location = 1;

           range110.length = 4;

            [sss5 replaceCharactersInRange:range110 withString:@"lue"];

             NSLog(@"%@",sss5);

  2)指定字符串的删除

    NSMutableString *sss6 = [NSMutableString stringWithString:@"我是一名程序员"];

      sss7.location = 0;

          sss7.length = 4;

          [sss6 deleteCharactersInRange:sss7];

            NSLog(@"%@",sss6);

      

原文地址:https://www.cnblogs.com/liYongJun0526/p/4854589.html