NSString的常用方法

大小写处理 Upper & Lower case

-(NSString *)uppercaseString     -> Alter to upper all

-(NSString *)lowercaseString      -> Alter to lower all

-(NSString *)capitalizedString     ->Initial upper, rest lower

void caseTest(){

NSString *str=@"GuangDong";

NSLog(@"Uppercase:%@",[str uppercaseString]);

NSLog(@"capitalizestring:%@",[@"age" capitalizedString]);

}


 

NSString  Cmparison 字符串比较  3

-(BOOL)isEqualToString:(NSString *)String             ->compare two string content ,if same return YES otherwise return NO

-(NSComparisonResult)compare:(NSString *)strng     ->compare two string by each letter,return object NSComparisonResult to show the result.

//NSComparisonResult  is a enum with three values

//NSOrderedDescending(left>right),NSOrderedAscending,NSOrderedSame

-(NSComparisonResult)caseInsensitiveCompare:(NSString *)string

//Ignore upper or lower case, return same to compare

//敲这么多英文感觉自己好装B啊,哈哈哈

void compare(){

BOOL result=[@"abc" isEqualToString:@"Abc"];// return NO(YES =1,NO=0)

NSLog(@'%i',result);

NSComparisonResult result2=[@"abc" compare@"ABC"];

if(result2==NSOrderedSame){

NSLog(@"same");

}else if(result2==NSOrderedAscending){

NSLog(@"left<right");

}

else if(result2==NSOrderedDescending){

NSLog(@"left>right");

}

}

 //Same lower case letter is larger than upper case of 32

 


 NSString search certain  string. NSString 中搜索字符串

-(BOOL)hasPrefix:(NSString *)astring     //Whether start with astring

-(BOOL)hasSuffix:(NSString *)astring     //Whether end with a string

-(NSRange)rangeOfString:(NSString *)astring

//Check whether include (first)astring ,if include,return the position of astring,if not,return location as -1 of NSRange,length is 0

-(NSRange)rangeOfString:(NSString *)astring options:(NSStringCompareOptions):mask 

//Passing a parameter mark ,change retrieval method.

-(NSRange)rangeOfString:(NSString *)astring options:(NSStringCompareOptions):mask range:(NSRange)searchRange

//还可以用searchRange指定检索范围

 

#pragma mark 字符串的搜索

void search(){

NSString *str=@"123456456.txt";//only return the first

NSLog(@"Start with 12:%i",[str hasPrefix:@"12"];

NSLog(@"End with txt:%i"[str hasSuffix:@"txt"];//检查文件的拓展名

 

NSRange range=[str rangeOfString:@"345"];//option +单击 看文档    @"445"

NSLog(@"Include :%@",NSStringFromRange(range)];//{2,3}

if(range.location==NSNotFound){

NSLog(@"Can't find");//range.length==0;

}else{

NSLog(@"%@",NSStringFromRange(range));

}

//Search from back

range=[str rangeOfString:@"456" options:NSBackwardsSearch];

NSLog(@"Range is %@",NSStringFromRange(range));  //{6,3}

//assign your area of search

NSRange range=NSMakeRange(2,3);

range=[str rangeOfString:@"456" options:NSBackwardSearch range:range];

NSLog(@"%@",NSStringFromRange(range));

}

 


NSString 的截取

-()

#pragma mark NSString 的截取

void subString(){

NSString *str=@"123456";

NSLog(@"%@",[str substringFromIndex:3]);//从索引3开始截取字符串(包括3)到尾部456

NSLog(@"%@",[str substringToIndex:3]);//从头部截取到索引3之前(不包括3)字符串  123

//指定范围进行截取

NSRange range=NSMakeRange(2,3);

NSLog(@"%@",[str substringWithRange:range]);

//切割字符串

NSString *str2=@"1-2-3-4-5";

NSArray *array=[str2 componentsSeparatedByString:@"-"];

//traverse array

NSLog(@"%@",array);//When print an object it will call decription method

//根据索引取数组值

NSString *str3=[array objectAtIndex:0];

NSLog(@"%@",str3);


 

字符串与路径

+(NSString *)pathWithComponents:(NSArray *)components

//将components 中的字符按顺序拼成一个路径

-(NSArray*)pathComponents

//将一个路径分解成一个装有每一个目录的NSArray

-(BOOL)isAbsolutePath

//是否是绝对路径

-(NSString *)lastPathComponent

//获得最后一个目录

-(NSString *)stringByDeletingLastPathComponent

//删除最后一个目录

-(NSString *)stringByAppendingPathComponent:(NSString *)str

//在路径后面拼接一个目录

-(NSString *)pathExtension

// get 拓展名

-(NSString *)astringByDeletingPathExtension

//delete extension

-(NSString *)astringByAppendingPathExtension:(NSString *)str

//append extension

void pathTest(){

//快速创建一个自动释放的数组

NSMutableArray *components=[NSMutableArray array];

[components addObject:@"Users"];

[components addObject:@"Yesi"];

[components addObject:@"Desktop"];

[NSString pathWithComponents;components];

//将数组中的所有字符串拼接成一个路径

NSString *path=[NSString pathWithComponents:components];

NSLog(@"%@",path);//User/Yesi/Desktop

//将路径分解成一个数组

NSArray *cmps=[path pathComponents];

NSLog(@"%@",cmps);

// absolute path->/user

path =@"users/mj/test";

NSLog(@"%i",[path isAbsolutePath]);

NSLog(@"last path components is %i",[path lastPathComponents]);

NSLog(@"Delete last path components is %i",[path stringByDeletinglastPathComponents]);//     ->users/Yesi

NSLog(@"Append path components is %i",[path stringByAppendingPathComponents:@"abc"]);

//使用的path一直都没有变过,返回值才是变过的  -> users/Yesi/test/abc

}

#pragma mark extension

void extension(){

NSString *str=@"users/yesi/text.txt";

NSLog(@"%@",[str pathExtension]);

NSLog(@"%@",[str stringBydeletingPathExtension]);

NSLog(@"%@",[@"abc" stringByAppendingPathExtension:@"mp3"]);

// will add stupidly .mp3

}


 

NSString 其他用法

void other(){

NSString *str=@"12";

int a = [str intValue];

NSLog(@"%i",a);

// count 字数

int b=[@"我是字符串" length];

NSLog(@"%zi",b);// 5

//取出对应的字符

unichar c=[@"abc" characterAtIndex:0]

NSLog(@"%c“,c);//a

//转为C语言的字符串

 

const char *s=[@"abc" UTF8String];// 常量不能对s进行修改

NSLog(@"%s",s);//%s c 语言中的字符串

}


 

转载于:https://www.cnblogs.com/yesihoang/p/4506117.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值