o-C学习7月记录NSString用法

// 1 创造字符串

NSString *str1 = @"hello";

NSString *str2 = [NSString string];

NSString *str3 = [NSString stringWithFormat:@"hello, %@", @"冀林"];

NSString *str4 = [NSString stringWithCString:"hello,mingming" encoding:NSUTF8StringEncoding];

NSString *str5 = [NSString stringWithUTF8String:"hello,mingming"];

NSString *str6 = [NSString stringWithContentsOfFile:@"/Users/qingyun/Desktop/test.m" encoding:NSUTF8StringEncoding error:nil];//stringwithconentsOfFIle:encoding:error:

NSLog(@"str1 >>> %@", str1);

NSLog(@"str2 >>> %@", str2);

NSLog(@"str3 >>> %@", str3);

NSLog(@"str4 >>> %@", str4);

NSLog(@"str5 >>> %@", str5);

NSLog(@"str6 >>> %@", str6);

// 2 长度

NSLog(@"str6‘length >>>> %ld", [str6 length]);

// 3 字符串比较

NSString *str7 = @"hello000";

NSString *str8 = [NSString stringWithString:str7];

NSString *str9 = [NSString stringWithFormat:@"HE%@",@"llo00000"];

NSLog(@"str7 >>>>> %p", str7);

NSLog(@"str8 >>>>> %p", str8);

NSLog(@"str9 >>>>> %p", str9);

// str7和str9本质是两个指针,所以直接用==比较值

if (str7 == str9) {

NSLog(@"相等");

} else {

NSLog(@"不相等");

}

// 比较字符串内容是否一样

if ([str7 isEqualToString:str9]) {

NSLog(@"相等");

} else {

NSLog(@"不相等");

}

//   NSString *str10 = @"100000";

//   NSString *str11 = @"000100000";

// NSComparisonResult result = [str10 compare:str11 options:NSNumericSearch];

// NSLog(@"result >>> %ld", result);

NSString *str12 = @"410324198510282811";

NSString *str13 = @"19851028";

NSComparisonResult result1 = [str12 compare:str13 options:NSCaseInsensitiveSearch range:NSMakeRange(6,8)]; //options 选项  range 类别

NSLog(@"result1 >>> %ld", result1);

// 4.连接字符chuan

NSString *str14 = @"hello";

NSString *str15 = [str14 stringByAppendingString:@"weiliang"];//append 附加,添加

NSString *str16 = [@"/Users/qingyun" stringByAppendingPathComponent:@"Desktop"];//Component 组件,成分,要素

NSLog(@"str15 >>>>> %@", str15);

NSLog(@"str16 >>>>> %@", str16);

// 5.字符串查找

NSString *str17 = @"今天我们学习gcd";

if ([str17 containsString:@"gcd"]) {

NSLog(@"少年,好好学习吧,不要关心你不该关心的东西..");

}//contains 包含,容纳

NSString *str18 = @"410000xxxxxxxxxx";

if ([str18 hasPrefix:@"41"]) {

NSLog(@"是河南人");

}// hasPrefix:方法的功能是判断创建的字符串内容是否以某个前缀开始

NSString *str19 = @"icon.exe";

if ([str19 hasSuffix:@"png"] || [str19 hasSuffix:@"jpg"]) {

NSLog(@"合法头像");

}//hasSuffix:方法的功能是判断创建的字符串内容是否以某个后缀开始

NSString *str20 = @"~/Desktop/test.h";

NSLog(@"pathExtension >>> %@", [str20 pathExtension]);//  文件扩展名 Extension 扩展,扩大

NSLog(@"absolute path >>> %@", [str20 stringByExpandingTildeInPath]); //Expand 展开   tilde波浪号

NSLog(@"absolute path >>> %@", [[str20 stringByExpandingTildeInPath] stringByAbbreviatingWithTildeInPath]);  // 合闭波浪号   abbreviate缩略 缩短

// 6 提取子串

NSString *str21 = @"hello, yangxu";

NSLog(@"subString >>> %@", [str21 substringFromIndex:6]);//sub 词根是‘子’    从第六个字符截取

NSLog(@"subString >>> %@", [str21 substringToIndex:6]);  // 截取六个字符

NSLog(@"subString >>> %@", [str21 substringWithRange:NSMakeRange(3, 5)]);  //字定义截取范围

/*********可变字符串*********/

//NSMutableString *mstr = [NSMutableString stringWithCapacity:50];// Capacity容量

//NSMutableString *mstr = [NSMutableString stringWithString:@"1506"];

NSMutableString *mstr = [NSMutableString stringWithFormat:@"1506-%@-", @"master"];

// 1追加

[mstr appendString:@"zhang"];

NSLog(@"mstr >>> %@", mstr);

[mstr appendString:@"qinpei"];

NSLog(@"mstr >>> %@", mstr);

// 2.删除

[mstr deleteCharactersInRange:NSMakeRange(0, 4)];

NSLog(@"mstr >>> %@", mstr);

// 3.插入

[mstr insertString:@"1506" atIndex:0];

NSLog(@"mstr >>> %@", mstr);

// 4.替换

[mstr replaceCharactersInRange:NSMakeRange(5, 4) withString:@"teacher"];//从第五个字符开始用teacher替换4个字符

NSLog(@"mstr >>> %@", mstr);

// 5.格式化追加

[mstr appendFormat:@"-%@", @"stage1"];

NSLog(@"mstr >>> %@", mstr);

2015-07-18 10:14:17.013 TestNSString[3033:385566] str1 >>> hello

2015-07-18 10:14:17.014 TestNSString[3033:385566] str2 >>> 

2015-07-18 10:14:17.014 TestNSString[3033:385566] str3 >>> hello, 冀林

2015-07-18 10:14:17.014 TestNSString[3033:385566] str4 >>> hello,mingming

2015-07-18 10:14:17.014 TestNSString[3033:385566] str5 >>> hello,mingming

2015-07-18 10:14:17.014 TestNSString[3033:385566] str6 >>> (null)

2015-07-18 10:14:17.014 TestNSString[3033:385566] str6‘length >>>> 0

2015-07-18 10:14:17.014 TestNSString[3033:385566] str7 >>>>> 0x1000021b0

2015-07-18 10:14:17.014 TestNSString[3033:385566] str8 >>>>> 0x1000021b0

2015-07-18 10:14:17.015 TestNSString[3033:385566] str9 >>>>> 0x100300210

2015-07-18 10:14:17.015 TestNSString[3033:385566] 不相等

2015-07-18 10:14:17.015 TestNSString[3033:385566] 不相等

2015-07-18 10:14:17.015 TestNSString[3033:385566] result1 >>> 0

2015-07-18 10:14:17.015 TestNSString[3033:385566] str15 >>>>> helloweiliang

2015-07-18 10:14:17.015 TestNSString[3033:385566] str16 >>>>> /Users/qingyun/Desktop

2015-07-18 10:14:17.015 TestNSString[3033:385566] 少年,好好学习吧,不要关心你不该关心的东西..

2015-07-18 10:14:17.015 TestNSString[3033:385566] 是河南人

2015-07-18 10:14:17.025 TestNSString[3033:385566] pathExtension >>> h

2015-07-18 10:14:17.026 TestNSString[3033:385566] absolute path >>> /Users/qingyun/Desktop/test.h

2015-07-18 10:14:17.026 TestNSString[3033:385566] absolute path >>> ~/Desktop/test.h

2015-07-18 10:14:17.026 TestNSString[3033:385566] subString >>>  yangxu

2015-07-18 10:14:17.026 TestNSString[3033:385566] subString >>> hello,

2015-07-18 10:14:17.026 TestNSString[3033:385566] subString >>> lo, y

2015-07-18 10:14:17.026 TestNSString[3033:385566] mstr >>> 1506-master-zhang

2015-07-18 10:14:17.026 TestNSString[3033:385566] mstr >>> 1506-master-zhangqinpei

2015-07-18 10:14:17.026 TestNSString[3033:385566] mstr >>> -master-zhangqinpei

2015-07-18 10:14:17.027 TestNSString[3033:385566] mstr >>> 1506-master-zhangqinpei

2015-07-18 10:14:17.027 TestNSString[3033:385566] mstr >>> 1506-teacherer-zhangqinpei

2015-07-18 10:14:17.027 TestNSString[3033:385566] mstr >>> 1506-teacherer-zhangqinpei-stage1

时间: 2024-08-10 21:30:40

o-C学习7月记录NSString用法的相关文章

Java学习-007-Log4J 日志记录配置文件详解及实例源代码

此文主要讲述在初学 Java 时,常用的 Log4J 日志记录配置文件详解及实例源代码整理.希望能对初学 Java 编程的亲们有所帮助.若有不足之处,敬请大神指正,不胜感激!源代码测试通过日期为:2015-1-30 13:54:02,请知悉. 所需的 jar 包下载链接为:http://yunpan.cn/cKE56sxqtQCfP  访问密码 63d8 有关 Log4J 日志文件中日志级别及文件配置的详细情况,在 Log4J 的配置文件(xml.properties)中有详细的介绍,敬请参阅!

学习Wireshark之一:基本用法

什么是Wireshark Wireshark是世界上最流行的网络分析工具.这个强大的工具可以捕捉网络中的数据包,并为用户提供关于网络和上层协议的各种信息,并尝试显示包尽可能详细的情况.与很多其他网络工具一样,Wireshark 也使用pcap network library来进行封包捕捉.Wireshark可能算得上是今天能使用的最好的开源网络分析软件. Wireshark的前身叫做Ethereal(因为商标问题而改名),是开放源代码软件,我们可以免费从官方网站(http://wireshark

POI学习之道:HSSFWorkBooK用法

public ActionResult excelPrint() { HSSFWorkbook workbook = new HSSFWorkbook();// 创建一个Excel文件 HSSFSheet sheet = workbook.createSheet();// 创建一个Excel的Sheet sheet.createFreezePane(1, 3);// 冻结 // 设置列宽 sheet.setColumnWidth(0, 1000); sheet.setColumnWidth(1,

C语言学习一个月后感想

C语言学习一个月后感想 感谢李晓东老板及计算机工程师联盟的学长学姐和某神秘同级同学的辛勤指导,感谢宋雨田的督促和陪伴. 初识C的1..体会 我本以为凭借瓜皮思维和花里胡哨操作可以让我熟练地学习语言,现在发现只是python的易入门给我的错觉...错用列表赋值带来的稀奇古怪的初始值,scanf中百度已经无法解决的错误,时不时崩溃的codeblock,我永远无法知道到底在那里出错的oj(wa,时间溢出,数据溢出,编译错误)······好吧我知道这不是问题.(??へ??╬) 但愿吧. 我是贝尔格里尔斯

storm学习笔记完整记录(一)

storm有两种运行模式(本地模式和集群模式) 1. 首先创建一个类似于HelloWorld的简单程序,以便进入storm的大门,包结构如下: 2.从包结构可以知道,这是一个Maven Project,pom.xml的内容如下: <project xmlns="http://maven.apache.org/POM/4.0.0"          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    

NSString 用法大全。

一.NSString 创建字符串.  NSString *astring = @"This is a String!"; 创建空字符串,给予赋值.  NSString *astring = [[NSString alloc] init]; astring = @"This is a String!"; NSLog(@"astring:%@",astring); string release]; 使用变量初始化  NSString *name = 

【python学习】今天看看学习 %d ,%s, %f 等用法,下面的学习例子是说输入名字、年龄、工作,工资。并给出65岁退休还差多久的计算

今天看看学习 %d ,%s, %f 等用法.%d 是占位符整数,%s 是占位符,%f 是浮点数.下面的学习例子是说输入名字.年龄.工作,工资.并给出65岁退休还差多久的计算.重点在于用占位符来print (msg).后面附更多的备用. # __author__:"Gabriel Jason" # date: 2017-11-05 name = input("Name:") age = int(input("Age:")) job = input(

linux学习第一月测验

1.yum源的配置与使用(5分)1) 创建一个本地yum源[base]Mount /dev/cdrom /mntname=local_basebaseurl=file:///mnt/gpgcheck=0 2) 安装开发包组 yum grouplistyum groupinstall development tools 2.复制/etc/ssh/sshd_config 到/tmp/中并更名为sshd_config.bak.将/tmp/sshd_config.bak文件中所有以非#号开头与包含空白字

近两个月来前端学习心态的记录

①前端三大块的学习 关于HTML.CSS.JavaScript的学习,第一个阶段是以前教学项目中用到的简单的嵌与JSP中的html结构,css导航栏和js的页面交互用到的简单的东西.第二个阶段就是在教学视频中学到的几个章节,包括apatna插件应用,dom的编程,ajax的应用,但是这些在以前只记得是一个内容,并不清楚他们在前端或者项目中的真正意义或者准确的位置. html:结构标记语言. css:页面样式. js:前端交互逻辑. ajax:异步式交互. jquery:对js的一层封装. ②框架