OC语言day07-17NSMutableString常用方法

pragma mark NSMutableString常用方法

pragma mark 概念

/**
 NSMutableString 调用方法的时候 都是没有返回值的。 因为返回的就是它本身
 查找字符串中的字符的范围 (rangeOfString)

 字符串 添加 (appendString) (appendFormat)
 字符串 删除一个范围 (deleteCharactersInRange)
 字符串 插入        (insertString)
 
 // 改
 不可变的字符串 替换 (stringByReplacingOccurrencesOfString : withSting)
 可变字符串 替换 (replaceOccurrencesOfString: withString : options(枚举) range:) [返回值 返回是替换了多少个字符]
 */

pragma mark 代码

#import 
#pragma mark 类

#pragma mark main函数
int main(int argc, const char * argv[])
{

#pragma mark NSMutableString常用方法 (增删改查)
    
    NSMutableString *strM = [NSMutableString stringWithFormat:@"www.baidu.com"];
    
#warning 1.字符串 添加 (appendString) (appendFormat)
    [strM appendString:@"/image"];
//    [strM appendFormat:@"/age is %i",10];
    NSLog(@"strM = %@",strM);
    
#warning 2.字符串 删除 (删除一个范围) (一种是写死,一种是计算位置) (deleteCharactersInRange)
    
    // 2.删除字符串里面的bai
#warning 2.1 技巧: 在开发中, 我们经常利用rangeOfstring 和 deleteCharactersInRange 方法配合 起来 删除指定的字符串
    // 2.1 先查找 bai 在字符串中的位置 (rangeOfString)
    // 2.2 再删除
    NSRange range = [strM rangeOfString:@"bai"];  // 返回的是一个起始位置、和长度
    [strM deleteCharactersInRange:range];
    NSLog(@"strM = %@",strM);

#warning 3.字符串 该 在bai前面 插入 love这个单词 (insertString)
    strM = [NSMutableString stringWithFormat:@"www.baidu.com"];
    /**
     insertString : 需要插入的字符串
     atIndex :      从哪里开始插入
     */
    NSRange range3 = [strM rangeOfString:@"bai"];
    [strM insertString:@"love" atIndex:range3.location]; // 从bai这个位 插入
    NSLog(@"strM = %@",strM);

#warning 4.要求字符串的bai 替换成 hei  替代 (replace)\
          不可变的字符串 替换 (stringByReplacingOccurrencesOfString : withSting) \
          可变字符串 替换 (replaceOccurrencesOfString: withString : options(枚举) range:)
    // 4.要求将 字符串的 bai 替换成 hei
    // 注意 : 如果是 调用了 NSString 的字符串替换方法 (stringByReplacingOccurrencesOfString : withSting), 不会修改原有字符串,而是产生一个新的字符串
//    NSString *newStr = [strM stringByReplacingOccurrencesOfString:@"bai" withString:@"hei"];
//    NSLog(@"旧的 strM = %@",strM);
//    NSLog(@"新的 newStr = %@",newStr);
    //
#warning 如果官方里面的参数 如果没有* 大多数都是是一个枚举 而且 你都不想使用 那么可以传一个 0 代表按照系统默认的方式处理
    /**
     replaceOccurrencesOfString : 需要替换的字符串
     withString                 : 用什么替换
     options                    : 替换时的 搜索方式
     range                      : 搜索的范围 (从第0个开始 一直到字符串末尾)
     
     返回值 是 替换了多少个字符串

     */
    strM = [NSMutableString stringWithFormat:@"www.baidu.com"];
//    strM = [NSMutableString stringWithFormat:@"www.baidu.com.bai"];
    NSUInteger count = [strM replaceOccurrencesOfString:@"bai" withString:@"hei" options:0 range:NSMakeRange(0,strM.length)];
    
    
    NSLog(@"旧的 strM = %@",strM);
    NSLog(@"替换了%lu个字符串",count);
    return 0;
}

你可能感兴趣的:(OC语言day07-17NSMutableString常用方法)