pragma mark NSMutableString常用方法
pragma mark 概念
/**
NSMutableString 调用方法的时候 都是没有返回值的。 因为返回的就是它本身
查找字符串中的字符的范围 (rangeOfString)
字符串 添加 (appendString) (appendFormat)
字符串 删除一个范围 (deleteCharactersInRange)
字符串 插入 (insertString)
// 改
不可变的字符串 替换 (stringByReplacingOccurrencesOfString : withSting)
可变字符串 替换 (replaceOccurrencesOfString: withString : options(枚举) range:) [返回值 返回是替换了多少个字符]
*/
pragma mark 代码
#import <Foundation/Foundation.h>
#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;
}