字符串类——NSString/NSMutableString
2016-03-23 10:23
295 查看
一、不可变字符串 NSString
1、初始化字符串1)有格式的字符串初始化方式
NSString *string = [[NSString alloc] initWithFormat:@"%@%d", @“初始化",2015];
便利构造器
NSString *string1 = [NSString stringWithFormat:@“%@%d”, @“初始化", 2015];
2)字符串初始化(当给字符串赋值时,如果是常量区字符串,不建议用初始化,可直接赋值)
NSString *string2 = @"初始化"; NSString *string3 = [[NSString alloc] initWithString: string];
便利构造器
NSString *string4 = [NSString stringWithString:string];
3)空字符串初始化
NSString *string5 = [[NSString alloc] init];
便利构造器
NSString *string6 = [NSString string];
2、获取字符串长度 length
NSLog(@“%ld”,[string length]);
3、判断字符串是否包含前后缀
1)判断前缀 hasPrefix
if ([string hasPrefix:@“初" ]) { NSLong(@“ 存在”); }
2)判断后缀 hasSuffix
if ([string hasSuffix:@“初始化"]) { NSLog(@“ 存在”); }
4、判断字符串中是否包含另一个字符串 rangOfString
NSRange range = [string rangeOfString:@“始”];//NSRange 是结构体类 NSLog(@“length = %ld”, range.length, range.location )//length:包含的字符串长度,location:包含的字符串所在的位置
5、字符串截取
1)截取前面部分 substringToIndex
NSLog(@“%@“,[string substringToIndex:3]);
2)截取后面部分 substringFromIndex
NSLog(@“%@“,[string substringFromIndex:2]);
3)截取中间部分 substringWithRange
NSRange range1 = {1, 3}; NSLog(@"%@“, [string substringWithRange: range1]);
4)字符串分割为数组
NSArray *as = [string1 componentsSeparatedByString:@“始"]; NSLog(@"%@", as);
6、字符串拼接
1)字符串拼接 stringByAppendingString
NSLog(@“%@“, [string stringByAppendingString:String1]);
2)格式串拼接 stringByAppendingFormat
NSLog(@“%@“, [string stringByAppendingFormat:@“%d”, 2015]);
7、字符串替换
1)普通替换
NSLog(@“%@“, [string stringByReplacingOccurrencesOfString:@“初” withString:@“ 首次”]);
2)给定范围替换
NSRange ranger2 = {4, 4}; NSLog(@“%@“, [string stringByReplacingCharactersInRange:range2 withString:@“成功”]);
8、字符串比较 (返回值只有三个,分别为-1(小于),0(等于),1(大于))
1)不区分大小写比较
NSLog(@“%ld“, [string localizedCaseInsensitiveCompare:string2]);
2)普通比较
NSLog(@“%ld“, [string caseInsensitiveCompare:string2]); NSLog(@“%ld“, [string compare:string2]);
9、字符串与数值的转换
NSString *string7 = @"12";
字符串转换为整型
NSLog(@"%d", [string7 intValue]);
10、大小写转换操作
NSString *string8 = @"abc";
全小写
NSLog(@"%@", [string8 lowercaseString]);
转换为相反的字母(即大写变小写,小写变大写)
NSLog(@"%@",[string8 uppercaseString]);
首字母大写
NSLog(@"%@", [string8 capitalizedString]);
11、判断字符串是否相等
- (BOOL)isEqualToString:(NSString *)aString [string isEqualToString: string1]
二、可变字符串 NSMutableString
他是 NSString 的子类,该类创建的字符串是一个动态的可变字符串, 可以支持增、删、改、查等动态操作
NSMutableString *mutableString = [[NSMutableString alloc] initWithFormat:@"%@", @“初始化"];
1、拼接字符串
[mutableString appendString:@"564"]; NSLog(@"%@", mutableString);
2、插入字符串
[mutableString insertString:@"ACS" atIndex:5]; NSLog(@"%@", mutableString);
3、删除字符串
NSRange range3 = {2 ,3}; [mutableString deleteCharactersInRange:range1]; NSLog(@"%@", mutableString);
4、替换字符串
1)全部替换
[mutableString setString:@"dasda555"]; NSLog(@"%@", mutableString);
2)在指定的范围内替换
[mutableString replaceCharactersInRange:range1 withString:@"as54"]; NSLog(@"%@", mutableString);
相关文章推荐
- opencv实现图片HDR功能
- FreeRTOS——错误排查
- HDOJ 2092 整数解(2次方程整数解公式)
- Weblogic控制器的部署
- 顺序表的基本运算
- xampp开启gzip方法
- 做一个合格的程序猿之浅析Spring AOP源码(十三) jdk的动态代理和cglib的代理
- iOS-添加UINavigation
- 强大的python 定时任务框架 APScheduler 类似java的Quartz
- Python 数据结构与算法——选取算法(TopK)
- 怎样熟练使用iMindMap移动端中三种分支形态
- 下拉菜单选择(jQuery实现)
- 理解Tomcat的WebappClassLoader(web应用类加载器)
- 我的结对项目心得与代码规范
- JQuery常用方法一览记
- SQL语句删除数据库表中重复数据
- 改变好难?大脑这小婊砸最喜欢选“默认项”了啦
- ldap auth
- 猜年龄-第五届
- spring ioc原理(看完后大家可以自己写一个spring)