您的位置:首页 > 移动开发 > IOS开发

苹果开发 笔记(70)常用的字符串操作

2015-09-02 12:00 357 查看
ios 里面经常要操作字符串,字符串也是每天必须面对的。今天做了一些题目也提及到这些很基本的,平时也会用到,所以现在也当笔记记录一下。

常用的操作如下:

格式化字符串

裁剪字符串

分割字符串

合并字符串

读取文本

过滤查询

替换字符串

1.格式化字符串

格式化数字

[code]NSInteger money = 120;
NSString *priceStr =  [NSString stringWithFormat:@"当前商品价格:%ld",(long)money];
NSLog(@"%@",priceStr);


输出一个浮点数,四舍五入并保留其一位小数

[code] CGFloat a = 20.46756;
 NSLog(@"输出结果是:%.1f",a);


转换ascii 编码的 用于城市列表 或者其他等

[code]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.裁剪字符串

搜索到字符串的位置,定位裁剪字符串。

[code]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.分割字符串

经常要对一些符号进行分割 如#,| ,@ 这样的符号做出分割

[code] NSString *str = @"百度|www.baidu.com";
 NSArray *resultArr =  [str componentsSeparatedByString:@"|"];
 NSLog(@"得到结果%@,%@",resultArr[0],resultArr[1]);


4 合并字符串

[code]NSInteger money = 120;
NSString *priceStr =  [NSString stringWithFormat:@"当前商品价格:%ld",(long)money];
priceStr = [priceStr stringByAppendingPathComponent:@"元"];
NSLog(@"%@",priceStr);


显示结果为:当前商品价格:120/元

[code]NSInteger money = 120;
NSString *priceStr =  [NSString stringWithFormat:@"当前商品价格:%ld",(long)money];
priceStr = [priceStr stringByAppendingString:@"元"];
NSLog(@"%@",priceStr);


显示结果为:当前商品价格:120元

区别多了一个 / 号,斜杠号

5.读取文本

通过读取包里面的文本,读取显示文本内容。

[code]NSString *path = [[NSBundle mainBundle]pathForResource:@"example" ofType:@"txt"];
NSString *codeStr = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];
self.codeTextView.text  = codeStr;


6.过滤查询

经常在查询的时候进行匹配、过滤等操作

[code] NSArray *array = @[@"shanghai",@"shandong",@"beijing"];
 NSString *str = @"beijing";
 NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF ==%@",str];
 NSLog(@"%@",[array filteredArrayUsingPredicate:predicate]);


匹配包含的数据

[code] NSArray *array = @[@"shanghai",@"shandong",@"beijing"];
 NSString *str = @"ang";
 NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF CONTAINS%@",str];
 NSLog(@"%@",[array filteredArrayUsingPredicate:predicate]);


7.替换字符串

采用正则的方式替换字符串

[code] 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);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: