iOS-OC-基础-NSString常用方法

NSString常用方法和属性

  1     
  2     //compare 比较字符串升序、相同还是降序,比较原理:首先比较第一个字符(ASCII码比较),如果是升序就为升序,如果相同比较下一个字符。。。
  3     NSString *str1 = @"abcd";
  4     NSString *str2 = @"ABCD";
  5     NSComparisonResult result = [str1 compare:str2];
  6     // caseInsensitiveCompare 忽略大小写比较
  7     //        NSComparisonResult result2 = [s7 caseInsensitiveCompare:s8];
  8     if (result == NSOrderedAscending) {
  9         NSLog(@"升序");
 10     } else if(result == NSOrderedSame) {
 11         NSLog(@"相同");
 12     } else if(result == NSOrderedDescending) {
 13         NSLog(@"降序");
 14     }
 15 
 16     //length 计算字符串字符的个数
 17     NSString *str3 = @"123456";
 18     NSString *str4 = @"12345678";
 19     NSUInteger len1 = [str3 length];
 20     NSUInteger len2 = [str4 length];
 21     NSLog(@"len1 = %ld ,len2 = %ld", len1, len2);
 22     
 23      //————————————————————————————字符串的转化 ————————————————————————————
 24     /*
 25      1、大小写的转换
 26      2、与基本数据类型的转换
 27      */
 28     
 29     NSString *str5 = @"hello WORLD";
 30     NSString *str6 = [str5 uppercaseString]; // 全部转为大写
 31     NSString *str7 = [str5 lowercaseString]; // 全部转为小写
 32     NSString *str8 = [str5 capitalizedString]; // 首字母大写
 33     NSLog(@"转为大写:%@",str6);
 34     NSLog(@"转为小写:%@",str7);
 35     NSLog(@"转为首字母大写:%@",str8);
 36     
 37     // 转为基本数据类型,只能是数字字符串可以转化
 38     NSString *str9 = @"1234";
 39     int value1 = [str9 intValue];
 40     float value2 = [str9 floatValue];
 41     double value3 = [str9 doubleValue];
 42     BOOL value4 = [str9 boolValue];
 43     NSLog(@"value1 = %d",value1);
 44     NSLog(@"value2 = %f",value2);
 45     NSLog(@"value3 = %lf",value3);
 46     NSLog(@"value4 = %d",value4);
 47     
 48     
 49     //————————————————————————————字符串的拼接——————————————————————————————
 50     
 51     NSString *str10 = @"11";
 52     NSString *str11 = @"22";
 53     
 54     NSString *str12 = [[NSString alloc] initWithFormat:@"%@%@",str10,str11];
 55     NSLog(@"str12 :%@",str12);
 56     
 57     NSString *str13 = [str10 stringByAppendingString:str11];
 58     NSLog(@"str13 :%@",str13);
 59     
 60     NSString *str14 = [str10 stringByAppendingFormat:@"%@33",str11]; //可以追加
 61     NSLog(@"str14 :%@",str14);
 62     
 63     
 64     //————————————————————————————字符串的查找替换———————————————————————————
 65     
 66     // 方式一:
 67     NSString *str15 = @"549686034@qq.com";
 68     //rangeOfString 查找字符串所在的位置 返回NSRange类型
 69     NSRange range = [str15 rangeOfString:@"@qq.com"];
 70     //NSNotFound 用于判断是否找到
 71     if (range.location != NSNotFound) {
 72         NSLog(@"包含字符串");
 73     } else{
 74         NSLog(@"不包含字符串");
 75     }
 76     
 77     // 方式二:查找并且替换
 78     NSString *newString = [str15 stringByReplacingOccurrencesOfString:@"qq.com" withString:@"163.com"];
 79     NSLog(@"newString :%@",newString);
 80     
 81     
 82     //————————————————————————————字符串的截取———————————————————————————
 83     
 84     NSString *str16 = @"1234567890";
 85     
 86     // substringToIndex:从字符串开始截取到指定的位置,是从0开始
 87     NSLog(@"截取的:%@",[str16 substringToIndex:2]);
 88     
 89     // substringFromIndex:从指定位置截取到字符串结尾
 90     NSLog(@"截取的1:%@",[str16 substringFromIndex:2]);
 91     
 92     // substringWithRange:截取指定的范围
 93     NSRange range1 = {1,3};
 94     //        NSRange range2 = NSMakeRange(1, 3); // NSrange的两种创建方式
 95     NSLog(@"截取的2:%@",[str16 substringWithRange:range1]);
 96     
 97     // 取指定位置的字符
 98     char c = [str16 characterAtIndex:1];
 99     NSLog(@"c = %c",c);
100     
101     
102     /*=============================NSMutableString(可变字符串)常用方法========================*/
103     
104     // 1、————————————————————————————可变字符串的创建———————————————————————————
105     NSMutableString *mstr1 = [[NSMutableString alloc] initWithFormat:@"zxcvbnm"];
106     NSMutableString *mstr2 = [NSMutableString stringWithFormat:@"asdfghjkl"];
107     
108     //        NSMutableString *ms3 = @"hjkl;"; 可变的字符串不能这么写
109     
110     
111     // 2、————————————————————————————可变字符串的插入、删除、追加、替换———————————————————————————
112     // insertString:atInde: 将字符串插入到指定的位置,不需要返回新的字符,这是跟不可变字符串的区别
113     [mstr1 insertString:@"1111" atIndex:1];
114     NSLog(@"ms1 :%@",mstr1);
115     
116     // deleteCharactersInRange :删除指定范围的字符串
117     NSRange range3 = {2,3};
118     [mstr2 deleteCharactersInRange:range3];
119     NSLog(@"mstr2 :%@",mstr2);
120     
121     //字符串的拼接
122     [mstr2 appendString:@"00"];
123     [mstr2 appendFormat:@"%d99",200];// 可以追加
124     NSLog(@"mstr2 :%@",mstr2);
125     
126     //字符串替换
127     NSMutableString *mstr3 = [[NSMutableString alloc] initWithFormat:@"YYXXZZ"];
128     NSRange range4 = [mstr3 rangeOfString:@"ZZ"];
129     // replaceCharactersInRange:withString: 将指定范围的字符串替换
130     [mstr3 replaceCharactersInRange:range4 withString:@"VV"];
131     NSLog(@"mstr3:%@",mstr3);
132     
133     // 设置新的字符串
134     [mstr3 setString:@"000000000"];
135     NSLog(@"new_mstr3:%@",mstr3);

 

本文GitHub地址https://github.com/zhangkiwi/iOS_SN_NSString

转载于:https://www.cnblogs.com/zhang-kiwi/p/5009014.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值