iOS/Objective-C字符串NSString操作总结20130608更新


个人整理转载请注明出处http://blog.csdn.net/rylt2011/article/details/9044925

Nsstring为不可变字符串,赋值后没有系统函数可以对其做任何改变

1、声明并初始化一个字符串

NSString * string = @”Hello”;

2、判断两个字符串是否相等,返回值为YES或NO

[string1 isEqualToString:string2];

3、(1)比较大小返回值为1大于;为0等于;为-1小于

[string1 compare:string2];

(2)忽略大小写比较两个字符串大小

[string1 caseInsensitiveCompare:b];

4、将字符串中的小写字母转换成大写字母

[string1 uppercaseString];

5、将字符串中的大写字母转换成小写字母

[string1 lowercaseString];

6、将字符串的首字母大写其他字母小写

[string1 capitalizedString];

7、将字符串string2在字符串string1中进行匹配

NSRange range = [string1 rangeOfString:string2];

返回一个结构体,range.location是string2在string1中的位置,range.length是string2的长度,如果string1中有多个string2时只返回第一个的位置

8、截取从字符串开头到指定(长度)位置,组成一个新的字符串

[string1 substringToIndex:6]  不包括第6位

9、从指定位置截取到最后,组成一个新的字符串

[string1 substringFromIndex:6]包括第6位

10、从指定位置m开始截取指定个数n的字符

[string1 substringWithRange:NSMakeRange(m,n)]包括第m位

 

可变字符串NSMutableString 不能对不可变字符串使用一下函数

1、定义可变字符串

NSMutableString *string =[[NSMutableString alloc]initWithString: @”abc”];

2、将C字符串转码位可变字符串

NSMutableString *string =[[NSMutableString alloc] initWithUTF8String:@”abc”];

3、修改字符串

[string1 setString:@”abcdef”];

4、预设空间大小;会随着实际改变而改变;

   str= [NSMutableString stringWithCapacity:3];

   str.string= @”Hello World!”;

5、NSMutableString * str4 = [NSMutableString stringWithString:@”abc”];

6、追加字符串

[str4 appendString:@”123”];

7、追加格式化字符串

int a = 5;

[str4 appendFormat:@”a= %d”,a];

8、从指定位置开始插入字符串

[str4 insertString:@”hello”atIndex:5];

9、删除字符

[str4 deleteCharactersInRange:NSMakeRange(5,2)];//从第5位开始删除2个字符,后面的向前补

10、替换

[str4 replaceCharactersInrange:NSMakeRange(5,2) withString: @”hello”];//从第5位开始的两个字符修改为@”hello”

11、设置为C的字符串

const char * p = str.UTF8String;

12、前缀后缀处理

NSString * str5 = @”hello world!”;

[str5 hasPrefix:@”he”];//返回值为YES或NO查看str5是否以@”he”开头

[str5 hsaSuffix:@”d!”];//返回值为YES或NO查看str5是否以@”d!”结尾

 

在objective-c中去掉字符串前后空格的方法(类似于C#中的trim方法)如下:

NSString *string = @" spaces in frontand at the end "; 
NSString *trimmedString = [string stringByTrimmingCharactersInSet
[NSCharacterSet whitespaceAndNewlineCharacterSet]]; 
NSLog(trimmedString);

 

取得整个文件file里面的内容 存在字符串中

NSString *s = [NSStringstringWithContentsOfFile:fileencoding:NSUTF8StringEncodingerror:nil];

 

 

常见的NSString方法

创建一个新字符串并将其设置为path指定的文件的内容,使用字符编码enc,如果非零,则返回err中的错误

+(id)stringWithContentsOfFile:pathencoding:encerror:err

 

创建一个新的字符串,并将其设置为url的内容,使用字符编码enc,如果非零则返回err中的错误

+(id)stringWithContentsOfUrl:urlencoding:encerror:err

 

创建一个新的空字符串

+(id)string

 

创建一个新字符串,并将其设置为nsstring

+(id)stringWithString:nsstring

 

将新分配的字符串设置为nsstring

-(id)initWithString:nsstring

 

将字符串设置为在path指定的文件的内容

-(id)initWithContentsOfFile:pathenconding:encerror:err

 

将字符串设置为url(NSURL*)url的内容,使用字符编码enc,如果非零,则返回err中的错误

-(id)initWithContentsOfURL:urlenconding:encerror:err

 

返回字符串中的字符数目

-(unsinged int)length

 

返回索引i的Unicode字符

-(unichar)characterAtIndex:i

 

返回从i开始直到结尾的子字符串

-(NSString*)substringFromIndex:i

 

根据指定范围返回子字符串

-(NSString*)substringWithRange:rang

 

返回从该字符串开始位置到指定索引i的子字符串

-(NSString*)substringToIndex:i

 

比较两个字符串,忽略大小写

-(NSComparator *)caseInsensitiveCompare:nsstring

 

比较两个字符串

-(NSComparator *)compare:nsstring

 

测试字符串是否以nsstring开始

-(BOOL)hasPrefix:nsstring

 

测试字符串是否以nsstring结尾

-(BOOL)hasSuffix:nsstring

 

测试字符串是否相等

-(BOOL)isEqualToString:nsstring

返回每个单词首字母大写的字符串(每个单词的其余字母转换为小写)

-(NSString*)capitalizedString

 

返回转换为小写的字符串

-(NSString*)lowercaseString

 

返回转换为大写的字符串

-(NSString*)uppercaseString

 

返回转换为UTF-8字符串的字符串

-(const char*)UTF8String

 

返回转换为double的字符串

-(double)doubleValue

 

返回转换为浮点值的字符串

-(float)floatValue

 

返回转换为NSInteger整数的字符串

-(NSInteger)integerValue

 

返回转换为整数的字符串

-(int)intValue

 

常见的NSMutableString方法

创建一个字符串,初始包含size的字符

+(id)stringWithCapacity:size

 

使用初始容量为size的字符来初始化字符串

-(id)initWithCapacity:size

 

将字符串设置为nsstring

-(void)setString:nsstring

在接收这的末尾附加nsstring

-(void)appendString:nsstring

 

删除指定range中的字符

-(void)deleteCharactersInRange:range

 

以索引i为起始位置插入nsstring

-(void)insertString:nsstringatIndex:i

 

使用nsstring替换range指定的字符

-(void)replaceCharactersInRange:rangewithString:nsstring

 

根据选项opts。使用指定range中的nsstring2替换所有nsstring。选项以包括NSBackwardsSearch(从范围i的结尾开始搜索)、NSAnchoredSearch(nsstring必须匹配范围的开始)、NSLiteralSearch(执行逐字节比较以及NSCaseInsensitiveSearch的按位或组合)

-(void)replaceOccurrencesOfString:nsstringwithString:nsstring2options:optsrange:ragne

 

 


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值