NSString方法与NSMutableString方法
NSString方法
+(id) stringWithContentsOfFile:path encoding:enc error:err
创建一个新字符串并将其设置为path指定的文件的内容,使用字符编码enc,如果非零,则返回err中错误
+(id) stringWithContentsOfURL:url encoding:enc error:err
创建一个新的字符串,并将其设置为url的内容,使用字符编码enc,如果非零,则返回err中的错误
+(id) string
创建一个新的空字符串
+(id) stringWithString:nsstring
创建一个新的字符串,并将其设置为nsstring
-(id)initWithString:nsstring
将分配的字符串设置为nsstring
-(id) initWithContentsOfFile:path encoding:enc error:err
将字符串设置为path制定的文件的内容
-(id) initWithContentsOfURL:url encoding:enc error:err
将字符串设置为url(NSURL *)url的内容,使用字符编码enc,如果非零,则返回err中的错误
-(id) (UNSIgned int)length
返回字符串中的字符数目
-(unichar)characterAtIndex:i
返回索引i的Unicode字符
-(NSString *)substringFromIndex:i
返回从i开始知道结尾的子字符串
-(NSString *)substringWithRange:range
根据指定范围返回子字符串
-(NSString *)substringToIndex:i
返回从该字符串开始到索i的子字符串
-(NSComparator *)caseInsensitiveCompare:nsstring
比较两个字符串,忽略大小写
-(NSComparator *)compare:nsstring
比较两个字符串
-(BOOL)hasPrefix:nsstring
测试字符串是否以nsstring开始
-(BOOL)hasSuffix:nsstring
测试字符串是否以nsstrng结尾
-(BOOL)isEqualToString:nsstring
测试两个字符串是否相等
-(NSString *) capitalizedString
返回每个单词首字母大写的字符串(每个单词的其余字母转换为小写)
-(NSString *)lowercaseString
返回转换为小写的字符串
-(NSString *)uppercaseString
返回转换为大写的字符串
-(const char*)UTF8String
返回转换为UIF-8字符串的字符串
-(double)doubleValue
返回转换为double的字符串
-(float)floatValue
返回转换为浮点值的字符串
-(NSInteger)integerValue
返回转换为NSInteger整数的字符串
-(int)intValue
返回转换为整数的字符串
NSMutableString方法
+(id) stringWithCapacity:size
创建一个字符串,初始包含size的字符
-(id) initWithCapacity:size
使用初始容量为size的字符串来初始化字符串
-(void) setString:nsstring
将字符串设置为nsstring
-(void) appendString:nsstring
在接收者的末尾附加nsstring
-(void) deleteCharactersInRange:range
删除指定range中的字符
-(void) insertString:nsstring atIndex:i
以索引i为起始位置插入nsstring
-(void) replaceCharactersInRange:range withString:nsstring
使用nsstring替换range指定的字符
-(void) replaceOccurrencesOf
String:nsstring withString:
nsstring2 options:opts range:range
根据选项opts。使用指定range中的nsstring2替换所有的nsstring。选项可以包括NSBackwardsSearch(从范围的结尾开始搜索)NSAnchoredSearch(nsstring必须匹配范围的开始),NSLiteralSearch(执行逐字节比较以及NSCaceInsensitiveSearch的按位或组合)
NSMutableString
[aString substringToIndex:([aString length]-1)];//字符串删除最后一个字符
//字符串删除最后一个字符
NSRange range = {0,1};
[aStr deleteCharactersInRange:range];
NSString是不可变的,意思是他声明的对象我们不可以改变,如果要改变,可以使用它的子类:NSMutableString
你可以使用类方法:stringWithCapacity来创建一个新的NSMutableString,声明如下:
* (id) stringWithCapacity: (unsigned) capacity:
可按如下方法声明一个新的可变字符串:
NSString *str1;
Str1 = [NSMutableString stringWithCapacity:42];
可以使用appendString或appendFormat来对可变字符串操作:
- (void)appendString: (Nsstring *) aString;
- (void) appendFormat: (NSString *) Format;
appendString 接受参数aString,然后将其复制到接受对象的末尾。
appendFormat类似,他将格式化的字符串附加在接受对象的末尾,而不是创建新的对象。
EXP:
NSMutableString *string;
string = [NSMutableString stringWithcapacity:50];
[string appendString: @”hello,there”];
[string appendFormat: @”human %d!”, 39];
这段代码的string最后被赋值为:hello,there human 39!
你还可以使用deleteCharactersInRange:方法来删除字符串中的字符:
- (void) deleteCharactersInRange: (NSRange) range;
通常将deleteCharactersInRange: 和rangeOfString:连在一起使用,NSMutableString可以使用NSString的全部功能,包括rangeOfString:、字符串比较和其他任何功能。
例如,你列了一个所有朋友列表,你突然又不喜欢Jack了,想把他从朋友列表里删除:
//朋友列表初始化
NSMutableString *friends;
friends = [NSMutableString stringWithcapacity: 50];
[friends appendString: @”level fang jack even”];
//找到jack并且删除
NSRange jackRange;
jackRange = [friends rangeOfString: @”jack”];
jackRange.length++; //eat the space that follows
[friends deleteCharactersInRange: jackRange]
NSString方法与NSMutableString方法的更多相关文章
- (转载)OC学习篇之---Foundation框架中的NSString对象和NSMutableString对象
在之前的一篇文章中我们说到了Foundation框架中的NSObject对象,那么今天在在来继续看一下Foundation框架中的常用对象:NSString和NSMutableString. 在OC中 ...
- OC学习篇之---Foundation框架中的NSString对象和NSMutableString对象
今天在在来继续看一下Foundation框架中的常用对象:NSString和NSMutableString 在OC中NSString对象是不可变的,和Java中的String一样的,而NSMutabl ...
- iOS UI-(多)视图控制器的生命周期、加载方法和模态视图方法以及屌丝方法
#import "ViewController.h" #import "SecondViewController.h" @interface ViewContr ...
- ios-动态添加方法,交换方法,重定向方法
新建一个类Person,Person.h 不写代码,Person.m 有如下两个方法: - (void)eat { NSLog(@"xxx eat===="); } [动态添加方法 ...
- C# IComparable接口、IComparer接口和CompareTo(Object x)方法、Compare()方法
在项目中经常会用到字符串比较,但是有时候对字符串的操作比较多,规则各异.比如有的地方我们需要用排序规则,有的地方需要忽略大小写,我们该如何写一个比较容易操作的比较方法呢?重新实现IComparer接口 ...
- js 继承 对象方法与原型方法
js函数式编程确实比很多强语言使用灵活得多,今天抽了点时间玩下类与对象方法调用优先级别,顺便回顾下继承 暂时把原型引用写成继承 先看看简单的两个继承 var Parent = function(){} ...
- .NET中那些所谓的新语法之二:匿名类、匿名方法与扩展方法
开篇:在上一篇中,我们了解了自动属性.隐式类型.自动初始化器等所谓的新语法,这一篇我们继续征程,看看匿名类.匿名方法以及常用的扩展方法.虽然,都是很常见的东西,但是未必我们都明白其中蕴含的奥妙.所以, ...
- .NET基础架构方法—DataTableToExcel通用方法
p { display: block; margin: 3px 0 0 0; } --> .NET架构基础方法—DataTableToExcel通用方法(NPOI) 今天封装DataTaleTo ...
- jQuery初学:find()方法及children方法的区别分析
首先看看英文解释吧: children方法: find方法: 通过以上的解释,可以总结如下: 1:children及find方法都用是用来获得element的子elements的,两者都不会返回 te ...
随机推荐
- 【Swift学习】Swift编程之旅---析构方法(十九)
在一个类的实例内存被释放之前,析构方法被立即调用.使用deinit关键字来声明析构方法,类似于构造方法用init来声明.析构方法只适用于类类型. 析构方法原理 Swift会自动释放不再需要的实例以 ...
- Vim快捷键分类
别用ESC了,用ctrl-[ 更快捷 一. 移动: h,j,k,l: 左,下,上,右. w: 下一个词的词首. e:下一个词的词尾. b:上一个词的词首. < ...
- 如果你恨一个程序员,忽悠他去做iOS开发
如果你恨一个程序员,忽悠他去做iOS开发.不管他背景是cobel还是 java,送他一本iOS开发的书.这种书最好是国人写的,容易以偏概全一点,相比洋鬼子的书,更容易学到皮毛.这叫舍不得孩子套不着狼, ...
- 2015暑假多校联合---Mahjong tree(树上DP 、深搜)
题目链接 http://acm.split.hdu.edu.cn/showproblem.php?pid=5379 Problem Description Little sun is an artis ...
- Social Media POC KT Session
地址: 1. http://c0048925.itcs.hp.com:8080/datamining/report/brandfocus.html Social Media POC是针对Social ...
- 容器--LinkedList
一.前言 上一篇我们介绍了List的重要实现之一ArrayList, 在大多数情况下,我们写代码时会直接使用到ArrayList,因为其在随机访问的优势是其它List无法比拟的.除了ArrayLis ...
- shell脚本(管理守护进程)
工作中常常会遇到处理消息队列的消费者进程,这样的进程是一个守护进程,即一个服务.服务通常写个shell脚本来管理,查询服务的status ,启动start 关闭stop 重启reload.最近在学 ...
- redis持久化机制
redis持久化 redis的数据存在内存中,所以存取性能好.但是存在内存中的数据存在一个问题,一旦机器重启,内存数据消失.为了解决这个问题,redis支持持久化.持久化就是为了解决内存数据丢失时恢复 ...
- DataSet的灵活,实体类的方便,DTO的效率:SOD框架的数据容器,打造最适合DDD的ORM框架
引言:DDD的困惑 最近,我看到园子里面有位朋友的一篇博客 <领域驱动设计系列(一):为何要领域驱动设计? >文章中有下面一段话,对DDD使用产生的疑问: •没有正确的使用ORM, 导致数 ...
- ASP.NET MVC Model绑定的简单应用
Model绑定是 MVC 框架根据 HTTP 请求数据创建 .NET 对象的一个过程. 一.简单类型 1.单一值