Object C学习笔记8-字符串NSString之二
2014-02-14 21:57 by 贺臣, 298 阅读, 0 评论, 收藏, 编辑
5. 字符串是否包含
hasPrefix 判断字符串是否以某个字符串开头
hasSuffix 判断字符串是否以某个字符串结尾
NSString *str1=@"Object C学习正在进行中.... LOVE"; if([str1 hasPrefix:@"Object"]){ NSLog(@"字符串:%@是以%@开头",str1,@"Object"); } if([str1 hasSuffix:@"LOVE"]){ NSLog(@"字符串:%@是以%@结尾",str1,@"LOVE"); } if([str1 hasSuffix:@"love"]){ NSLog(@"字符串:%@是以%@结尾",str1,@"LOVE"); }
注意以上方法都是要区分大小写的。
6. 截取字符串
substringToIndex: 截取从索引0到特定位置处的字符串
substringFromIndex: 截取从特定位置到字符串末尾的字符串
substringWithRange:从特定位置开始截取特定长度的字符
NSString *str2=[str1 substringToIndex:3]; NSLog(@"从索引0开始截取到索引3的位置: %@",str2); NSString *str3=[str1 substringFromIndex:4]; NSLog(@"所索引位置4开始截取到末尾: %@",str3); NSRange range=NSMakeRange(2,100); NSString *str4=[str1 substringWithRange:range]; NSLog(@"从指定位置开始截取特定长度: %@",str4); range=NSMakeRange(2, 100); NSString *str5=[str1 substringWithRange:range]; NSLog(@"从指定位置开始截取特定长度: %@",str5);
这里要注意NSRange 获取NSRange的实例要使用NSRange range=NSMakeRange(2,100); 第一个参数为索引位置,第二个参数为长度,当使用substringWithRange方法的时候,如果截取的长度超过了字符串的本身长度就会报错。这里需要注意一下
7. 字符串大小写转化
uppercaseString将字符串转化为大写
lowercaseString将字符串转化为小写
capitalizedString将字符串首字母转化为大写
NSString *str1=@"object C 大小写转化 Love"; //转化为大写 NSString *str2=[str1 uppercaseString]; NSLog(@"转化为大写:%@",str2); //转化为小写 NSString *str3=[str1 lowercaseString]; NSLog(@"转化为小写: %@",str3); //首字母大写 NSString *str4=[str1 capitalizedString]; NSLog(@"首字母大写: %@",str4);
8. 查找字符串
查找字符串可以使用rangeOfString方法,该方法返回NSRange 可以获得匹配的字符串的起始位置以及长度
NSString *str1=@"object C 大小写转化 Love"; NSString *t=[[NSString alloc] initWithCString:"Love"]; NSRange range=[str1 rangeOfString:t]; NSLog(@"Location=%d",range.location); NSLog(@"length=%d",range.length);
9. 替换字符串
可以使用stringByReplacingCharactersInRange方法替换特定位置的字符串
可以使用stringByReplacingOccurrencesOfString将特定字符串替换为指定字符串
NSString *str1=@"object C 大小写转化 Love"; NSString *t=[[NSString alloc] initWithCString:"Love"]; NSRange range=[str1 rangeOfString:t]; NSLog(@"Location=%d",range.location); NSLog(@"length=%d",range.length); NSString *str2=[str1 stringByReplacingCharactersInRange:range withString:@"XCode"]; NSLog(@"替换之后的字符串为:%@",str2); NSString *str1=@"Love object C 大小写转化 Love"; NSString *str2=[str1 stringByReplacingOccurrencesOfString:@"Love" withString:@"XCode"]; NSLog(@"替换之后的字符串:%@",str2);