博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
oc68--NSString
阅读量:5885 次
发布时间:2019-06-19

本文共 4577 字,大约阅读时间需要 15 分钟。

////  main.m//  字符串截取#import 
int main(int argc, const char * argv[]) { NSString *str = @"小码哥"; /* // NSRange : 位置/长度// NSRange range = {6, 3};// NSRange range;// range.location = 6;// range.length = 3; // 只要是OC提供的结构体, 一般都可以使用NSMakeXXX来创建// NSRange range = NSMakeRange(6, 3); */ // 1.动态获取截取的起始位置 NSUInteger location = [str rangeOfString:@">"].location + 1; // 2.动态获取截取的长度 // 注意:rangeOfString是从左至右的开始查找, 只要找到就不找了 // NSUInteger length = [str rangeOfString:@"<" options:NSBackwardsSearch].location - location; 从后向前找, NSUInteger length = [str rangeOfString:@"
小码哥 --> 小码哥 --> 小码哥 小码哥 --> 小码哥 --> 小码哥 */ NSLog(@"str = %@", str); NSUInteger location = [str rangeOfString:@">"].location + 1; NSString *newStr = [str substringFromIndex:location]; NSLog(@"newStr = %@", newStr); location = [newStr rangeOfString:@"
////  main.m//  字符串替换#import 
int main(int argc, const char * argv[]) { /* // 需求: 将&符号替换为/ NSString *str = @"http:&&www.520it.com&img&lnj.gif"; // OccurrencesOfString: 要替换谁 // withString: 用谁替换 NSString *newStr = [str stringByReplacingOccurrencesOfString:@"&" withString:@"/"]; NSLog(@"newStr = %@", newStr); // 1.去除空格 2.将&替换为/ NSString *str = @" http: &&www. 520it.com &img&lnj.gif "; // 1.去除空格 NSString *newStr = [str stringByReplacingOccurrencesOfString:@" " withString:@""]; NSLog(@"newStr = |%@|", newStr); NSString *newStr2 = [newStr stringByReplacingOccurrencesOfString:@"&" withString:@"/"]; NSLog(@"newStr2 = |%@|", newStr2); */ // 3.替换首尾 NSString *str1 = @" http:&&www.520it.com&img&lnj.gif "; NSString *str = @"HTTP://www.520it.com/img/LNJ.GIF"; NSCharacterSet *set1 = [NSCharacterSet whitespaceCharacterSet]; NSString *newStr1 = [str stringByTrimmingCharactersInSet:set1]; NSCharacterSet *set = [NSCharacterSet uppercaseLetterCharacterSet]; NSString *newStr = [str stringByTrimmingCharactersInSet:set]; //首尾大小写去掉了 NSLog(@"newStr = |%@|", newStr); return 0;}
////  main.m//  字符串与路径#import 
int main(int argc, const char * argv[]) { NSString *str = @"User/lnj/Desktop/lnj.txt.jpg"; // 1.判断是否是绝对路径 // 其实本质就是判断字符串是否以/开头 if([str isAbsolutePath]) //no { NSLog(@"是绝对路径"); }else{ NSLog(@"不是绝对路径"); } // 2.获取文件路径中的最后一个目录 // 本质就是获取路径中最后一个/后面的内容 NSString *newStr = [str lastPathComponent]; NSLog(@"%@", newStr); //lnj.txt.jpg // 3.删除文件路径中的最后一个目录 // 本质就是删除最后一个/后面的内容, 包括/也会被删除 NSString *newStr1 = [str stringByDeletingLastPathComponent]; NSLog(@"%@", newStr1); //User/lnj/Desktop // 4.给文件路径添加一个目录 // 本质就是在字符串的末尾加上一个/ 和指定的内容 // 注意: 如果路径后面已经有了/, 那么就不会添加了 // 如果路径后面有多个/, 那么会自动删除多余的/, 只保留一个 NSString *newStr2 = [str stringByAppendingPathComponent:@"xmg"]; NSLog(@"%@", newStr2); //User/lnj/Desktop/lnj.txt.jpg/xmg // 5.获取路径中文件的扩展名 // 本质就是从字符串的末尾开始查找., 截取第一个.后面的内容 NSString *newStr3 = [str pathExtension]; NSLog(@"%@", newStr3); //jpg // 6.删除路径中文件的扩展名 // 本质就是从字符串的末尾开始查找.,删除第一个.和.后面的内容 NSString *newStr4 = [str stringByDeletingPathExtension]; NSLog(@"%@", newStr4); //User/lnj/Desktop/lnj.txt // 7.给文件路径添加一个扩展名 // 本质就是在字符串的末尾加上一个.和指定的内容 NSString *newStr5 = [str stringByAppendingPathExtension:@"jpg"]; NSLog(@"%@", newStr5); //User/lnj/Desktop/lnj.txt.jpg.jpg return 0;}
////  main.m//  字符串的转换#import 
int main(int argc, const char * argv[]) {// NSString *str = @"abc"; // 1.将字符串转换为大写 NSString *newStr = [str uppercaseString]; NSLog(@"%@", newStr); // 2.将字符串转换为小写 NSString *newStr2 = [newStr lowercaseString]; NSLog(@"%@", newStr2);// htpp://www.520it.com/img/lnj.GIF; // 3.将字符串的首字符转换为大写 NSString *newStr = [str capitalizedString]; NSLog(@"%@", newStr); // 4.字符串与基本数据类型的转换 NSString *str1 = @"110"; NSString *str2 = @"120";// str1 + str2; // 错误 int value1 = [str1 intValue]; int value2 = [str2 intValue]; NSLog(@"sum = %i", value1 + value2); // 注意: 如果不是int,double,float,bool,integer,longlong这些类型就不要乱用 NSString *str3 = @"abc"; int value3 = [str3 intValue]; NSLog(@"value3 = %i", value3); // 5.C语言字符串和OC字符串之间的转换 char *cStr = "lnj"; NSString *str = [NSString stringWithUTF8String:cStr]; NSLog(@"str = %@", str); NSString *newStr = @"lmj"; const char *cStr2 = [newStr UTF8String]; NSLog(@"cStr2 = %s", cStr2); return 0;}

 

转载地址:http://kylix.baihongyu.com/

你可能感兴趣的文章
taro 填坑之路(一)taro 项目回顾
查看>>
[LeetCode] Insert into a Cyclic Sorted List 在循环有序的链表中插入结点
查看>>
ubuntu代理登录webqq失败
查看>>
POSTMAN模拟AJAX请求
查看>>
LightOJ 1126 Building Twin Towers(线性)
查看>>
HDU 1907 John(anti-nim)
查看>>
SVM学习笔记3-问题转化
查看>>
Csharp:操作存儲過程輸出參數,和返回值
查看>>
Silverligh“.NET研究”t程序集缓存巧妙设置 优化用户体验
查看>>
An“.NET研究”droid设计趋势分析10则
查看>>
[转]Oracle Stored Procedures Hello World Examples
查看>>
Git(进击学习:远程仓库操作)-V3.0
查看>>
轻仿QQ音乐之音频歌词播放、锁屏歌词-b
查看>>
Android 友盟社会化组件-分享实现
查看>>
支付宝在线支付接口开发教程
查看>>
程序员应知——关注细节
查看>>
XQuery摘抄
查看>>
分享.NET ERP项目开发中应用到的重量级工具 选择合适的工具和资源,做项目效率高而且规范程度高...
查看>>
35佳以字体为核心的优秀网页设计作品
查看>>
基于OpenCV的形态学开源库 V0.2
查看>>