字符串

字符串相关的数据类型
Cocoa框架提供一个与字符串操作相关的结构体NSRange
NSRange
-表示相关事务的范围,包含两个成员,一个是location,表示起始的位置

两个变量

要得到一个起始位置为10,3个长度范围,有三种方式可以创建


变量的设置.png

第一种直接用字符串的方法
第二种直接给成员赋值
第三种用C语言的聚合结构赋值

三种方式创建字符串.png

字符串
Cocoa框架用来处理字符串的类是NSString
字符串是字符序列,使用

@"内容"

-这就是NSString类型的字面量形式
-C语言中使用字符数组来处理字符串
-Cocoa框架中NSString类中有很多处理字符串的方法

创建字符串
可以使用普通的声明对象方式创建字符串

NSString *string =@"字符串内容";
NSString *string =[NSString new];

可以使用NSString的类方法穿件字符串

NSString *string=[NSString stringWithFormat:@%d格式%d",5,11];
//string中的内容为"5格式11"

+(id)stringWithFormat:@"格式化表示符"...
+号是类方法,...三个点表示可变参数

NSString中的工厂方法
-stringWithFormat是一个类方法,可以产生一个NSSting对象
-很多类方法都是用来产生新对象,这样的类方法称为工厂方法
-string方法用于产生一个空字符串
-stringWithString方法用在浅拷贝一个现有的字符创,并产生一个字符串

NSString *str4=[NSString string];
NSString *str5=[NSString stringWithString:@"Hello"];//用于浅拷贝一个现有字符串产生字符串

以上都是字符串的创建


字符串的长度

NSString中提供了一个实例方法length,用于返回一个字符串中的字符个数(长度)
-(unsighed int)length;
使用这个方法取得字符串的长度

计算字符串的长度

字符串的比较
-比较字符串是最常用的操作,分为两种
1.比较两个字符串(指针)
2.比较两个字符串(内容)
-isEqueITString 方法返回BOOL型结果

内容比较和指针比较

比较字符串的大小
-使用compare方法进行字符串的大小比较

-(NSComparisonResult)compare:(NSString *)string;
NSOrderedAscending =-1,  //小于
NSOrderedSame =0,        //等于
NSOrderedDescending=1;   //大于
//是一个枚举的类型
数组的大小比较

上例代码中rst的结果为0

字符串不区分大小写的比较
-compare 方法比较字符串分时区分大小写
-compare:option 方法比较字符串时可以额外控制其他选项,例如是否区分大小写

-(NSComparisonResult)compare:(NSString*)string
                      option:(NSStringCompareOptions)mask;

-NSStringCompareOption有以下三个值:
1.NSCaseInsensitiveSearch:不区分大小写字符
2.NSLiteralSearch:区分大小写,进行完全比较
3.NSNumericSearch:根据字符串中数字大小进行比较,而不是ASCII码值
三个选项可以使用|进行多选(或符号)

字符串大小写转换函数
-(NSString *)uppercaseString
-(NSString *)lowercaseString
-(NSString *)capitalizedString

字符串是否以其他字符串开头和结尾

判断开头
-(BOOL)hasPrefix:(NSString *)string;
判断结尾
-(BOOL)hasSuffix:(NSString *)string;
字符串开头判断.png

字符串是否包含其他字符串

-(NSRange)rangeOfString:(NSString *)string;

有查找到字符会输出,如果没有range.length为NSNotFound

判断是否有字符串.png
字符串数据类型的转换

字符串转换函数
从字符串中获取相应的数据类型的函数
-(double) doubleValue
-(float) floatValue
-(int) intValue

从第几个开始截取字符串

从中截取.png

从头截取

从头截取.png

截取一定范围内的字符

从第三个开始,截取五个

范围截取.png

字符串替换函数

定义一个字符串.png
使用字符串替换方法替换.png
四种字符串替换方法.png
替换已知字符串.png

用指定字符来对数组的进行分割

指定字符来分割字符串.png

可变字符串
-NSString是不可变的字符串,一旦创建之后内容不可修改
-NSString字符串有一个子类NSMutableSting 这是可变的字符串
-使用该类的stringWithCapacity工厂方法可以创建一个新的NSMutalbeString
(id)stringWithCapacity : (unsigned long) capacity;
NSMutableString *mStr = [NSMutableString stringWithCapacity : 40];

在可变字符串上修改内容
-可以通过NSMytableString的方法来增加内容

-(void) appendString:(NSString *) string;
-(void) appendFormat:(NSString *) format,…;
可变字符串的修改.png

字符串的拼接


字符串的拼接.png

可以用这个方法来删除字符串中的字符
-(void) deleteCharactersInRange:(NSRange) range;

字符串的删除操作.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,802评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,109评论 2 379
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,683评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,458评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,452评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,505评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,901评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,550评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,763评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,556评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,629评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,330评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,898评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,897评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,140评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,807评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,339评论 2 342

推荐阅读更多精彩内容