iOS开发之NSString的几条实用技巧
2015-08-05 11:00
357 查看
NSString的几条小技巧
创建字符串
常量字符串NSString *string = @"i am an iOSDevTip!";
常用创建方法
NSString *string = [[NSString alloc] init]; string = @"i am an iOSDevTip too!";
用initWithString创建字符串
NSString *string = [[NSString alloc] initWithString:@"iOSDevTip is here!"];
格式化创建字符串
int格式化字符串int age = 20; NSString *personAge = [NSString stringWithFormat:@"this person age is %d",age];
既然int格式化字符串,那么float、double等,也可以格式化字符串。
NSString格式化字符串
NSString *name = @"iOSDevTip"; NSString *personName = [NSString stringWithFormat:@"this person name is %@",name];
字符串比较
isEqualToString方法比较//比较字符串 NSString *stingOne = @"This is an iOSDevTip!"; NSString *stringTwo = @"This is an iOSDevTip!"; BOOL result = [stingOne isEqualToString:stringTwo];
compare方法比较
BOOL result = [stingOne compare:stringTwo] == NSOrderedSame;
compare:方法返回值类型为NSComparisonResult。而NSComparisonResult有下面几个枚举值。
typedef NS_ENUM(NSInteger, NSComparisonResult) {NSOrderedAscending = -1L, NSOrderedSame, NSOrderedDescending};
字符串大小写转换
小写转大写NSString *string = @"This is an iOSDevTip!"; [string lowercaseString];
大写转小写
NSString *string = @"This is an iOSDevTip!"; [string uppercaseString];
截取字符串
substringToIndex截取字符串NSString *string = @"This is a operation string!"; NSString *subToString = [string substringToIndex:6];
截取的subToString为This i
substringFromIndex截取字符串
NSString *subFromString = [string substringFromIndex:6];
截取的subFromString为s a operation string!
substringWithRange截取字符串
NSString *rangeString = [string substringWithRange:NSMakeRange(6, 3)];
截取的rangeString为s a!
判断字符串是否包含另一个字符串
rangeOfString判断NSString *string1 = @"This is a iOSDevTip"; NSString *string2 = @"iOSDevTip"; NSRange range = [string1 rangeOfString:string2]; NSInteger location = range.location; NSInteger leight = range.length; NSString *logString = [[NSString alloc] initWithString:[NSString stringWithFormat:@"Location:%ld,Leight:%ld",location,leight]]; NSLog(@"logString:%@",logString);
打印出来:
iOSStrongDemo[8837:2221170] logString:Location:10,Leight:9
如果Leight为0,说明不包含。还有更多关于NSString的用法,大家一起探索吧。
0.首字母大写
代码://首字母大写 NSString *string = @"ligang"; NSLog(@"string: %@",[string capitalizedString]);
打印:
2015-07-16 23:06:11.652 iOSStrongDemo[10279:3062010] string: Ligang
1.分割字符串
代码://分割字符串 NSString *string = @"This is a iOSDevTip"; NSArray *array = [string componentsSeparatedByString:@"a"]; NSString *string1 = [array objectAtIndex:0]; NSString *string2 = [array objectAtIndex:1]; NSLog(@"string1:%@ string2:%@",string1,string2);
打印:
2015-07-16 22:40:39.559 iOSStrongDemo[10165:3055448] string1:This is string2: iOSDevTip
2.追加字符串
代码://追加字符串 NSMutableString *string = [[NSMutableString alloc] initWithString:@"I Love "]; [string appendString:@"China"]; NSLog(@"string:%@",string);
打印:
2015-07-16 22:42:32.305 iOSStrongDemo[10189:3056410] string:I Love China
3.插入字符串
代码://插入字符串 NSMutableString *string = [[NSMutableString alloc] initWithString:@"I China"]; [string insertString:@"Love " atIndex:2]; NSLog(@"string: %@",string);
打印:
2015-07-16 22:44:10.706 iOSStrongDemo[10206:3057014] string: I Love China
4.删除字符串
代码://删除字符串 NSMutableString *string = [[NSMutableString alloc] initWithString:@"I love China"]; [string deleteCharactersInRange:NSMakeRange(2, 4)]; NSLog(@"String1: %@",string);
打印:
2015-07-16 22:46:58.437 iOSStrongDemo[10219:3057749] String1: I China
5.判断是否包含前后缀
代码://判断是否包含前后缀 NSString *string = @"I love China"; BOOL isHasI = [string hasPrefix:@"I"]; BOOL isHasChina = [string hasSuffix:@"China"];
6.替换字符串
代码://替换字符串 NSString *string = @"I love China"; NSString *replaceString = [string stringByReplacingOccurrencesOfString:@"love" withString:@"like"]; NSLog(@"replaceString: %@",replaceString);
打印:
2015-07-16 22:56:07.405 iOSStrongDemo[10236:3059503] replaceString: I like China
7.去除字符串首尾的空格和换行符
代码://去除字符串首尾的空格和换行符 NSString *string = @" I love China "; NSString *text = [string stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]]; NSLog(@"text:%@",text);
打印:
2015-07-16 23:00:47.845 iOSStrongDemo[10265:3061013] text:I love China
相关文章推荐
- iOS学习笔记10- IOS MagicRecord 详解
- iOS开发之保存照片到自己创建的相簿
- iOS 定位时出现 kCLErrorDomain error 2错误
- iOS开发之layoutSubviews的作用和调用机制
- 自己动手构建表单验证功能【iOS】
- ios工程中ARC与非ARC的混合
- iOS 自定义控件 progressView(环形进度条)
- iOS 使用cocoapods遇见头文件找不到
- iOS-计算两个日期之间的天数
- iOS 对应用程序启动时所有方法的调用顺序分析(转自董铂然博客园)
- 苹果IOS开发者账号的区别,企业账号,个人账号,公司团队账号,教育账号
- ios禁止屏幕旋转
- iOS 7中的extendedLayout
- 利用dwarfdump 分析IOS crash
- iOS-基本知识汇总
- iOS 读书笔记-cookie
- iOS在照片上添加水印
- iOS 开发的中英文入门推荐书籍都有哪些?
- IOS Xcode 插件
- iOS图形库CorePlot