可变字符串的基本操作

//
//  main.m
//  OC语言学习


#import <Foundation/Foundation.h>


int main(int argc, const char * argv[]) {
    @autoreleasepool {
        NSString *str1 = @"This is string A";
        NSString *search, *replace;
        NSMutableString *mstr;
        NSRange substr;
        
        //从不可变字符串创建可变字符串
        mstr = [NSMutableString stringWithString:str1];
        NSLog(@"%@",mstr); //This is string A
        
        //插入字符
        [mstr insertString:@" mutable" atIndex:7];
        NSLog(@"%@",mstr); // This is mutable string A
        
        //插入末尾进行有效拼接
        [mstr insertString:@" and string B" atIndex:[mstr length]];
        
        //直接使用 appendString
        [mstr appendString:@" and string C"];
        NSLog(@"%@",mstr); //This is mutable string A and string B and string C
        
        //根据范围删除 子字符串
        [mstr deleteCharactersInRange:NSMakeRange(16, 13)];
        NSLog(@"%@",mstr); //This is mutable string B and string C
        
        //查找是否存在,如果存在就删除
        substr = [mstr rangeOfString:@"string B and "];
        if (substr.location != NSNotFound) {
            [mstr deleteCharactersInRange:substr];
        }
        
        //直接设置为可变字符串
        [mstr setString:@"This is string A"];
        NSLog(@"%@",mstr); //This is string A
        
        //替换一些字符
        [mstr replaceCharactersInRange:NSMakeRange(8, 8) withString:@"a mutable string"];
        NSLog(@"%@",mstr); //This is a mutable string
        
        //查找和替换
        search = @"This is";
        replace = @"An example of";
        substr = [mstr rangeOfString:search];
        if (substr.location != NSNotFound) {
            [mstr replaceCharactersInRange:substr withString:replace];
            NSLog(@"%@",mstr); //An example of a mutable string
        }
        
        //查找和替换所有匹配项
        search = @"a";
        replace = @"x";
        substr = [mstr rangeOfString:search];
        while (substr.location != NSNotFound) {
            [mstr replaceCharactersInRange:substr withString:replace];
            substr = [mstr rangeOfString:search];
        }
        NSLog(@"%@",mstr); // An exxmple of x mutxble string

    }
    return 0;
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值