NSString为不可变字符串,NSMutableString可变更字符串(但必须初始化)
- 初始化
- 列表内容
- 字符串截取
- 字符串比较
- 字符串长度
- 字符串相等与前后缀
- 存在关系
- 字符串拼接
- 类型转换
- 字符串转换数组
- 大小写替换
- 去除字符串的符号
- 可变字符串
初始化
//创建字符串
NSString *str1 = [NSString stringWithFormat:@"鸡.贼memem3.1415962daHHH.a"];
//[NSString string];
NSString *str2 = [[NSString alloc]initWithString:str1];
//指定字符串初始化NSString对象
NSString *str3 = [NSString stringWithFormat:@"%@,%@",str1,str2];
字符串截取
[str1 substringFromIndex:3];
[str1 substringToIndex:2]; //从下标0开始截取
[str1 substringWithRange:NSMakeRange(1, 2)];
字符串比较
if ([str1 compare:str3]) {
NSLog(@"不同");
}
[str1 caseInsensitiveCompare:str3];//不区别大小写比较
//比较输出数值
NSComparisonResult result = [str1 compare:str3];
switch(result){
case NSOrderedSame: //比较相等
NSLog(@"相同");
break;
case NSOrderedAscending: //左边的大
NSLog(@"前大后小");
break;
case NSOrderedDescending: //右边的大
NSLog(@"后大前小");
break;
default:
break;
}
字符串长度
[str3 length];
字符串的相等相等
字符串的前缀后缀
if ([str1 isEqualToString:str2]) {
} //相等
[str1 hasPrefix:@"鸡"];//前缀
[str1 hasSuffix:@"a"];//后缀
存在关系
//存在关系 - (NSRange)rangeOfString:(NSString *)aString;
//搜索字符串One是否存在于字符串Two
NSLog(@"%ld",[str3 rangeOfString:str1].location);
//判断字符串str3是否存在于字符串str1
字符串拼接
[str1 stringByAppendingString:str3];
[str1 stringByAppendingFormat:str2,str3];//将str2和str3拼接到str1后
NSString *str = [NSString stringWithFormat:str2,str3];
类型转换
NSLog(@"%f",[str doubleValue]);
NSLog(@"%f", [str floatValue]);
NSLog(@"%d", [str intValue]);
NSLog(@"%ld", [str integerValue]);
NSLog(@"%lld", [str longLongValue]);
NSLog(@"%d", [str boolValue]);
字符串转换为数组
NSString *change = @"1,2,3,4";
[[change componentsSeparatedByString:@","]objectAtIndex:3];
大小写间转换
[str1 uppercaseString];//全大写
[str1 lowercaseString];//小写
[str1 capitalizedString];//首字母大写
去除字符串的空格和字符
[@" saldaj " stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]]; //去掉字符串最右边的一个空格
NSLog(@"%@",[@" saldaj" stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]]);//去掉回车
NSLog(@"%@",[@"110.01300" stringByTrimmingCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@"0"]]);//去掉字符串右边所有"0"
去除特殊符号 或任意符号
NSCharacterSet *delect = [NSCharacterSet characterSetWithCharactersInString:@"@/:;()¥「」"、[]{}#%-*+=_\\|~<>$€^•'@#$%^&*()_+'\""];
NSString *strold = @"@/:;()¥「」"、[]{}#%-*+=_\\|~<>$€^•'@#$%^&*(我最帅)_+'\"";
strold = [strold stringByTrimmingCharactersInSet:delect];//strnew 为删除了delect中特殊符号后 剩下保留的字符串
NSLog(@"%@",strold);
字符串替换
NSString *string = @"夏浩文最帅啦HHHHaaaa";
[string stringByReplacingOccurrencesOfString:@"夏浩文" withString:@"夏小龙"];
[string stringByReplacingOccurrencesOfString:@"夏浩文" withString:@"夏小龙" options:NSCaseInsensitiveSearch range:NSMakeRange(0, 3)];
//在不区别大小写比较的情况下 且从范围(下标,长度)下的 @"夏浩文"替换成@"夏小龙"
[string stringByReplacingCharactersInRange:NSMakeRange(0, 3) withString:@"么么哒"];
//指定从下标第0个开始三个字符串替换成@"么么哒"
可变字符串(必须初始化)
NSMutableString *mustr = [NSMutableString stringWithString:@"heating,too hot"];
//替换
[mustr replaceCharactersInRange:NSMakeRange(8, 7) withString:@"yeah! hot much!"];
NSLog(@"%@",mustr);//不能直接放入nslog里使用
//插入
[mustr insertString:@"It's" atIndex:7];//从索引位置开始插入
//删除指定区域
[mustr deleteCharactersInRange:NSMakeRange(0, 7)];
NSLog(@"%@",mustr);
//追加(拼接)
[mustr appendString:@"meemda"];
[mustr appendFormat:@",%d %@",11,@"go"];//进行多个拼接
NSLog(@"%@",mustr);
OC路途漫漫,努力学习