从今天开始,我将总结一些常用的基础知识。
NSString 是开发中最长用到的一个类。废话不多说,直接把方法调用出来就好。
NSString
1、创建字符串
1)NSSring *str = @”asdf”;
2)NSString *str1 = [NSString new];
3)NSString *str2 = [[NSString alloc] initWithString:@”asdf”] // 等同于 1)
4)NSString *str3 = [NSString stringWithFormat:@”name is %@”,@”大小”]
5)char *c = “大小”;
NSString *str4 = [[NSString alloc] initWithCString: c encoding:nil]
6)NSString *str4 = [[NSString alloc] initWithUTF8String:"我在学习OC"]; // 由C字符串转换成OC字符串
2、获取字符串长度
1)NSSring *str = @”asdf”;
NSUInteger length = str.length;
3、获取字符串某个位置的字符
unichar c = [str characterAtIndex:1]; // 索引从0开始 变为 c 的字符
4、截取字符串
NSRange *rang = {1,2}; //location(索引开始的位置)、length(截取的长度);
NSString *subString = [str substringWithRange:rang];
5、获取子字符串在字符串中的索引位置和长度
NSRange range = [ str rangeOfString: subString ]; // 如果未找到 返回{-1, 0}
6、判断字符串内容是否相同(内容,不是地址)
BOOL isEqual = [str1 isEqualToString:str2]
7、替换字符串中的子字符串为给定的字符串
NSString * newStr = [str stringByReplacingOccurrencesOfString: @"a" withString: @"b"];
8、追加字符串返回新字符串
NSString *str = @"it"
NSString *newStr = [str stringByAppendingString: @“KiMan”];
9、在字符串中查找子字符窜出现的 位置
NSString *str=@"hello heima";//定义初始化母字符串
NSRange range=[str rangeOfString:@"hei"];在母字符串中查找子字符串的位置,找到返回位置和长度,否者返回NSNotFound
if(range.Location !=NSNotFound)
{
NSLog("%d,%d",range.Location,range.Length);
}
10、字符串中子字符串出现的次数
NSUInteger count = 0;
NSString * string1 = @"123as21312312333123";
NSString * string2 = @"123";
/*
if (string2.length > string1.length) {
return ;
}
*/
// i=0的时候比较123和123,i=1的时候比较23a和123,i=2的时候比较3as和123...以此类推,直到string1遍历完成
for(int i = 0; i < string1.length - string2.length + 1; i++) {
// 截取字符串 与之比较是否相同
if([[string1 substringWithRange:NSMakeRange(i, string2.length)] isEqualToString:string2]) {
count++;
}
}
NSLog(@"%d",count);
NSMutableableString
1、追加字符串
NSMutableableString *mstr = [[NSMutableableString alloc] init];
[mstr appendString: @“KiMan”];
2、在指定的索引位置插入字符串
[mstr insertString: @“Good” atIndex:2];
3、删除指定范围的字符串
NSRange range = {3,5};
[mstr deleteCharactersInRange:rang];
网友评论