字符串的转换操作
程序开发中,有时需要对字符串中字符大小写进行转换,为此,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入门教程》