OC语言-字符串总结

字符串

一.不可变字典:

 1.字符串格式化处理
int age = 20;
NSString *name = @"陈真";
NSString *info = [NSString stringWithFormat:@"%@今年%d",name,age];
        NSLog(@"%@",info);

2.截取字典
      a.从哪个位置开始截取字符串(substringFromIndex)
      例:NSString *newstring = [info substringFromIndex:2];

        NSLog(@"%@",newstring);
          NSString *str= @"床前明月光,疑是地上霜,。。。。";
        NSString *ts = [str substringFromIndex:12];

        NSLog(@"%@",ts);

       b.截取字符串到哪个位置(substringToIndex)
       例: 
        NSString *strr = [st substringToIndex:5];
        NSString *strr1 = [st substringToIndex:12];        NSLog(@"%@ %@“,strr,strr1)

        3截取字符串-从哪里来 到哪里去,,这种方法就是多了一个结构体,NSrage是一个结构体。(substringWithRange

       例:NSRange rage;
          结构体所在位置:
          rage.location=6;
           结构体的长度:
           rage.length=5;
           NSLog(@"%@",[st substringWithRange:rage]);

3.把字符串通过指定字符 分割成数组(componentsSeparatedByString)
       NSArray *message = [st componentsSeparatedByString:@","];
        NSLog(@"%@",message[2]);
        for (id k in message){
            NSLog(@"%@",k);

        }

4.字符的大小写转换(uppercaseString,lowercaseString,capitalizedString)                                                英文转成大写:
        NSString *english = @"chenhong";
        NSLog(@"%@",english.uppercaseString );
        转成小写:
        NSString *xiaoxie = @"CHENHONG";
        NSLog(@"%@",xiaoxie.lowercaseString);
        首字母大写:
        NSLog(@“%@“,english.capitalizedString);

 

5拼接字符串有三种(stringWithformat,stringByAppendingString),(stringByAppendingFormat)

1.stringWithformat

2.stringByAppendingString

             NSString *ss = @"我是";

           NSString *tt = @"中国人";

        

            NSString *t= [ss stringByAppendingString:tt];

            NSLog(@"%@",t);

        3.(stringByAppendingFormat)

        NSString *y = [ss stringByAppendingFormat:@"%@而且还是贵州人",tt];

        NSLog(@“%@",y);

##:1.不可变字符串拼接:是在原来字符串的上拼接一个字符串,生产一个新的字符串;原来的字符串不改变。

            2.可变字符串拼接:原来的字符串又添加了一个字符串 与原来的字符串 合成一个字符串(还是原来字符串的对象)(appendFormat,appendString)

5.查询字符串

          判断字符串是否包含某一个字符串

 

        NSString *x = @"我爱东方不败,令狐冲才是";

        NSRange z = [x rangeOfString:@"令狐冲"];

        NSLog(@"%ld",NSNotFound);

        if(z.location !=NSNotFound)

            NSLog(@"%@",x);

        else

            NSLog(@"骗人!!!");

        

       以什么开始(字符串的头部包含什么内容)

        

       BOOL result = [x hasPrefix:@"1"];

        if (result)

            NSLog(@"正确");

            else

                NSLog(@"错误");

       以什么结束(字符串的尾部部包含什么内容)

 

        if ([x hasSuffix:@"党"]) {

            NSLog(@"正确");

        }

        

        else

            NSLog(@"错误");

        

二.可变字典

                1.把指定字符串替换成另一个字符串(replaceCharactersInRange)

 

NSMutableString *name = [[NSMutableString alloc]initWithString:@"batg"];

        NSRange rang;

        rang100.location =1;

        rang100.length = 3;       

        [name replaceCharactersInRange:rang withString:@"ter"];

        NSLog(@"%@",name1);

              2.删除指定位置长度的字符串(deleteCharactersInRange)

[name deleteCharactersInRange:rang];

   

    3.字符串比较

           两种方法:

               1.compare

  

       NSString *aa =@"hong";

        NSString *bb = @"ABC";

NSComparisonResult result1 =[aa compare:bb];

        if (result1 == NSOrderedSame) {

            NSLog(@"aa<bb");

        }

         else

             NSLog(@"aa>bb");

          2.caseInsensitiveCompare 

NSString *cc =@"hongw";

        NSString *dd = @"ABCd";

        NSComparisonResult result2 =[cc compare:dd];

        if (result2 == NSOrderedDescending) {

            NSLog(@"aa>bb");

        }

 


在Objective-C中,可以使用正则表达式来查找和替换字符串。使用正则表达式可以根据特定的规则来匹配和操作字符串。 首先,使用`NSRegularExpression`类来创建一个正则表达式对象。可以通过使用`regularExpressionWithPattern:options:error:`方法并传入匹配模式、选项和错误对象来创建该对象。 接下来,可以使用`matchesInString:options:range:`方法来在字符串中查找所有符合模式的子串。这个方法将返回一个包含`NSTextCheckingResult`对象的数组,每个对象表示一个匹配结果。可以通过`range`属性来获取匹配子串在原始字符串中的位置。 然后,可以使用`substringWithRange:`方法从原始字符串中提取出匹配的子串。 如果需要替换字符串中的某些内容,可以使用`replaceMatchesInString:options:range:withTemplate:`方法来替换匹配的子串。该方法将根据提供的替换模板来替换匹配内容。例如,可以使用`"****"`作为替换模板来替换电话号码中的中间四位。 总结一下,在Objective-C中查找和替换字符串的步骤如下: 1. 创建`NSRegularExpression`对象并指定匹配模式和选项。 2. 使用`matchesInString:options:range:`方法在字符串中查找符合模式的子串。 3. 遍历匹配结果数组,使用`substringWithRange:`方法提取出匹配的子串。 4. 如果需要替换字符串中的内容,使用`replaceMatchesInString:options:range:withTemplate:`方法进行替换。 希望这些信息对你有帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值