// main.m // NSMutableString基本概念,NSString是不可变字符串,NSMutableString是可变字符串。NSMutableString继承NSString,所以NSString得所有方法NSMutableString都是可以用的。 #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { NSString *str1 = @"lnj"; // 一开始str指向@"lnj"对应的内存 str1 = @"lmj"; // 修改了str指针的指向, 让它指向@"lmj"对应的内存 NSString *newStr1 = [str1 stringByReplacingOccurrencesOfString:@"l" withString:@"X"]; NSLog(@"%@", newStr1); //Xmj // 创建一个空的字符串 NSMutableString *str = [NSMutableString string]; NSLog(@"修改前: %@", str); [str appendString:@"lnj"]; NSLog(@"修改后: %@", str); NSMutableString *strM = [[NSMutableString alloc] init]; // strM = [NSMutableString alloc] initWithFormat:<#(NSString *), ...#> // strM1 = [NSMutableString stringWithFormat:<#(NSString *), ...#>] return 0; }
// // main.m // NSMutableString常用方法 #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { NSMutableString *strM = [NSMutableString stringWithFormat:@"www.520it.com.520"]; // 1.在字符串后面添加/image [strM appendString:@"/image"]; // [strM appendFormat:@"/age is %i", 10]; NSLog(@"strM = %@", strM); // 2.删除字符串中的520 // 技巧: 在开发中, 我们经常利用rangeOfString和deleteCharactersInRange方法配合起来删除指定的字符串 // 2.1先查找出520在字符串中的位置 NSRange range = [strM rangeOfString:@"520"]; // 2.2删除520 [strM deleteCharactersInRange:range]; NSLog(@"strM = %@", strM); // 3.在520前面插入love这个单词 // insertString : 需要插入的字符串 // atIndex: 从哪里开始插入 NSRange range = [strM rangeOfString:@"520"]; [strM insertString:@"love" atIndex:range.location]; NSLog(@"strM = %@", strM); // 4.要求将字符串中的520替换为530 // 注意: 如果是调用NSString的字符串替换方法, 不会修改原有字符串, 而是生成一个新的字符串 NSString *newStr =[strM stringByReplacingOccurrencesOfString:@"520" withString:@"530"]; // 注意: 一般情况下OC方法要求传入一个参数如果没有*, 大部分都是枚举 // 一般情况下如果不想使用枚举的值, 可以传入0, 代表按照系统默认的方式处理 // OccurrencesOfString: 需要替换的字符串 // withString: 用什么替换 // options: 替换时的搜索方式 // range: 搜索的范围 // 返回值: 代表替换了多少个字符串 NSUInteger count = [strM replaceOccurrencesOfString:@"520" withString:@"530" options:0 range:NSMakeRange(0, strM.length)]; NSLog(@"strM = %@", strM); NSLog(@"count = %lu", count); NSLog(@"newStr = %@", newStr); return 0; }
// // main.m // NSMutalbleString练习 #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { /* 需求: 将3个520it拼接在一起, 中间用空格隔开 520it 520it 520it */ NSString *subStr = @"520it"; // 520it- NSString *newStr = [subStr stringByAppendingString:@" "]; // 520it-520it newStr = [newStr stringByAppendingString:subStr]; // 520it-520it- newStr = [newStr stringByAppendingString:@" "]; // 520it-520-520it newStr = [newStr stringByAppendingString:subStr]; // 注意: 在开发中如果需要对字符串进行频繁的操作, 不要使用不可变的字符串 NSString *newStr = [subStr stringByAppendingString:@" "];; for (int i = 0; i < 2; ++i) { newStr = [newStr stringByAppendingString:subStr]; newStr = [newStr stringByAppendingString:@" "]; } // newStr = [newStr stringByReplacingCharactersInRange:NSMakeRange(newStr.length -1 , 1) withString:@""]; newStr = [newStr stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]]; NSLog(@"newStr = |%@|", newStr); // 创建一个空得字符串 NSMutableString *strM = [NSMutableString string]; for (int i = 0; i < 3; ++i) { // 1.添加一个520it [strM appendString:subStr]; // 2.添加一个空格 [strM appendString:@" "]; } [strM deleteCharactersInRange:NSMakeRange(strM.length - 1, 1)]; NSLog(@"strM = |%@|", strM); return 0; }
本文转自农夫山泉别墅博客园博客,原文链接:http://www.cnblogs.com/yaowen/p/7440409.html,如需转载请自行联系原作者