iOS字符串操作

2021-07-23  本文已影响0人  anny_4243

字符串的转换操作

程序开发中,有时需要对字符串中字符大小写进行转换,为此,NSString提供了字符串转换操作的方法。例如,uppercaseString方法用于将字符串中所有的字符转换成大写,lowercaseString方法用于将字符串中所有的字符转成小写, capitalizedString方法用于将字符串中每个单词的首字符转为大写。接下来,通过一个案例来演示这些方法的使用。

NSString *str1 = @"WELCOME to itcast";
NSLog(@"str1:%@",[str1 uppercaseString]); //字符串全部转化为大写
NSLog(@"str1:%@",[str1 lowercaseString]); //字符串全部转化为小写
NSLog(@"str1:%@",[str1 capitalizedString]); //转化为每个词首字母大写

运行结果如下:

2021-07-23 10:41:50.092747+0800 字符串转换操作[38653:2658673] str1:WELCOME TO ITCAST
2021-07-23 10:41:50.093407+0800 字符串转换操作[38653:2658673] str1:welcome to itcast
2021-07-23 10:41:50.093646+0800 字符串转换操作[38653:2658673] str1:Welcome To Itcast

字符串的判断操作

在操作字符串时,有时需要对字符串进行一些判断操作,为此,NSString类提供了相应的方法。例如,isEqualToString方法可以判断两个字符串内容是否相等,hasPrefix方法可以判断一个字符串是否是以另一个字符串开头,hasSuffix方法可以判断某个字符串是否是以另一个字符串结尾等。接下来通过一个案例来学习这些方法的使用。

NSString *str1 = @"传智播客itcast";
NSString *str2 = @"传智itcast";
        
//字符串完全相等比较
BOOL result = [str1 isEqualToString:str2];
        
NSLog(@"%d", result);
        
//判断一个字符串是否以另一个字符串开头        
BOOL result2 = [str1 hasPrefix:@"传智播客"];        
NSLog(@"%d",result2);
        
//判断一个字符串是否以另一个字符串结尾
BOOL result3 = [str1 hasSuffix:@"itcast"];
NSLog(@"%d", result3);

运行结果如下:

2021-07-23 10:52:33.381702+0800 字符串转换操作[38917:2667103] 0
2021-07-23 10:52:33.382211+0800 字符串转换操作[38917:2667103] 1
2021-07-23 10:52:33.382292+0800 字符串转换操作[38917:2667103] 1

字符串的查找操作

在程序开发中,经常需要在某个字符串中查找指定的字符或子字符串,这时,可以使用NSString类提供的rangeOfString方法。接下来通过一个案例来学习如何使用rangeOfString方法进行字符串的查找操作

NSString *str1 = @"传智播客itcast";
NSString *str2 = @"传智";
NSString *str3 = @"itcast";
        
//判断str2在str1中的位置
NSRange range1 = [str1 rangeOfString:str2];
NSUInteger location1 = range1.location; //获取str2在str1中范围的位置
NSUInteger length1 = range1.length; //获取str2在str1中范围的长度
        
//打印输出str2的范围
if (location1 != NSNotFound) { //如果location1能找到
    NSLog(@"传智出现的位置是%lu, 符合长度为%lu", location1, length1);
}else NSLog(@"找不到传智");
        
//判断str3在str1中的位置        
NSRange range2 = [str1 rangeOfString:str3];        
NSUInteger location2 = range2.location; //获取str3在str1中范围的位置
NSUInteger length2 = range2.length; //获取str3在str1中范围的长度
        
//打印输出str3的范围
if (location2 != NSNotFound) { //如果location2能找到
    NSLog(@"itcast出现的位置是%lu, 符合长度为%lu", location2, length2);
}else NSLog(@"找不到itcast");

运行结果如下:

2021-07-23 11:14:51.864368+0800 字符串转换操作[39590:2683681] 传智出现的位置是0, 符合长度为2
2021-07-23 11:14:51.865878+0800 字符串转换操作[39590:2683681] itcast出现的位置是4, 符合长度为6

摘自《Objective-C入门教程》

上一篇下一篇

猜你喜欢

热点阅读