苹果开发 笔记(70)常用的字符串操作
来源:互联网 发布:网络教育是什么学历 编辑:程序博客网 时间:2024/06/10 01:12
ios 里面经常要操作字符串,字符串也是每天必须面对的。今天做了一些题目也提及到这些很基本的,平时也会用到,所以现在也当笔记记录一下。
常用的操作如下:
格式化字符串
裁剪字符串
分割字符串
合并字符串
读取文本
过滤查询
替换字符串
转换拼音
大小写转换
搜索判断
1.格式化字符串
格式化数字
NSInteger money = 120;NSString *priceStr = [NSString stringWithFormat:@"当前商品价格:%ld",(long)money];NSLog(@"%@",priceStr);
输出一个浮点数,四舍五入并保留其一位小数
CGFloat a = 20.46756; NSLog(@"输出结果是:%.1f",a);
转换ascii 编码的 用于城市列表 或者其他等
NSString *charText = [NSString stringWithFormat:@"%c",'A'];NSString *charText = [NSString stringWithFormat:@"%c",'B'];NSString *charText = [NSString stringWithFormat:@"%c",'C'];NSString *charText = [NSString stringWithFormat:@"%c",i+'A'];//i递增变量
2.裁剪字符串
搜索到字符串的位置,定位裁剪字符串。
NSString *str = @"百度|www.baidu.com";NSRange range = [str rangeOfString:@"|"];NSInteger index = range.location;NSString *frontStr = [str substringToIndex:index];NSString *endStr = [str substringFromIndex:index+1];NSLog(@"得到结果%@,%@",frontStr,endStr);
3.分割字符串
经常要对一些符号进行分割 如#,| ,@ 这样的符号做出分割
NSString *str = @"百度|www.baidu.com"; NSArray *resultArr = [str componentsSeparatedByString:@"|"]; NSLog(@"得到结果%@,%@",resultArr[0],resultArr[1]);
4 合并字符串
NSInteger money = 120;NSString *priceStr = [NSString stringWithFormat:@"当前商品价格:%ld",(long)money];priceStr = [priceStr stringByAppendingPathComponent:@"元"];NSLog(@"%@",priceStr);
显示结果为:当前商品价格:120/元
NSInteger money = 120;NSString *priceStr = [NSString stringWithFormat:@"当前商品价格:%ld",(long)money];priceStr = [priceStr stringByAppendingString:@"元"];NSLog(@"%@",priceStr);
显示结果为:当前商品价格:120元
区别多了一个 / 号,斜杠号
5.读取文本
通过读取包里面的文本,读取显示文本内容。
NSString *path = [[NSBundle mainBundle]pathForResource:@"example" ofType:@"txt"];NSString *codeStr = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];self.codeTextView.text = codeStr;
6.过滤查询
经常在查询的时候进行匹配、过滤等操作
NSArray *array = @[@"shanghai",@"shandong",@"beijing"]; NSString *str = @"beijing"; NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF ==%@",str]; NSLog(@"%@",[array filteredArrayUsingPredicate:predicate]);
匹配包含的数据
NSArray *array = @[@"shanghai",@"shandong",@"beijing"]; NSString *str = @"ang"; NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF CONTAINS%@",str]; NSLog(@"%@",[array filteredArrayUsingPredicate:predicate]);
7.替换字符串
采用正则的方式替换字符串
NSError *error = nil; NSRegularExpression *regularExpression = [NSRegularExpression regularExpressionWithPattern:@"\\$num\\$" options:0 error:&error];NSString *replaceStr = @"是否花费金币价格为$num$购买铜玉?购买后返回给买家$num$";NSString *resultStr = [ regularExpression stringByReplacingMatchesInString:replaceStr options:0 range:NSMakeRange(0, replaceStr.length) withTemplate:@"200"];NSLog(@"匹配结果%@",resultStr);
8.转换拼音
对字母和姓氏进行转换
-(NSString *)transToPinyin:(NSString *) str{ NSMutableString *changeStr = [str mutableCopy]; CFMutableStringRef cfref = (__bridge CFMutableStringRef) changeStr; CFStringTransform(cfref, NULL, kCFStringTransformMandarinLatin, false); CFStringTransform(cfref, NULL, kCFStringTransformStripDiacritics, false); return changeStr;}
9.转换大小写
NSString 有大小写的转换属性值提供
使用uppercaseString 和lowercaseString 则可以对字母进行转换大小写了
10. 搜索判断
利用rangeOfString 可以匹配到相应的结果
NSString *searchText = @"正在搜索关键字";NSString *text = @"关键字";NSRange resultRange= [searchText rangeOfString:text options:NSCaseInsensitiveSearch];if(resultRange.location != NSNotFound ){ NSLog(@"搜索匹配结果"); }
0 0
- 苹果开发 笔记(70)常用的字符串操作
- 苹果开发 笔记(33)常用组件笔记
- Android开发笔记(十)常用的图片加工操作
- 字符串的常用操作
- 常用的字符串操作
- 苹果开发 笔记(1)
- 苹果开发 笔记(2)
- 苹果开发 笔记(3)
- 苹果开发 笔记(4)
- 苹果开发 笔记(9)
- 苹果开发 笔记(10)
- 苹果开发 笔记(13)
- 苹果开发 笔记(14)
- 苹果开发 笔记(15)
- 苹果开发 笔记(16)
- 苹果开发 笔记(17)
- 苹果开发 笔记(18)
- 苹果开发 笔记(19)
- 第1周-简单输出语句练习2
- Android中的dispatchTouchEvent()、onInterceptTouchEvent()和onTouchEvent()
- 机房收费系统——组合查询
- Ubuntu下QNX SDP 6.6安装使用指南
- 524 A-B Problem【字符串处理】
- 苹果开发 笔记(70)常用的字符串操作
- oracle for update和for update nowait的区别
- 字符串数字赋值初始化
- LeetCode---------------Sort Colors
- 两种锁
- nyoj——676 小明的求助
- HTTP中的POST和GET请求的本质区别详解
- Random
- log4j layout ConversionPattern符号说明