关闭

OC 字符串

标签: OC字符串
43人阅读 评论(0) 收藏 举报
分类:

字符串分为不可变字符串(NSString)和可变字符串(NSMutableString),其中NSMutableString继承于NSString


下面是字符串中常用的方法

1.初始化一个字符串对象
NSString *string1 = @"FBI";
NSString *string2 =  [ NSString stringWithFormat:@"%@%@",@"Jack",@"Rick" ];

2.从本地文件读取字符串
NSString *path = @"/Users/ibokan2/Desktop/未命名文件夹/OC__06/OC__06__01/hello.html";

NSString *string3 = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];

3.从网络读取字符串
NSURL *url = [NSURL URLWithString:@"http://www.baidu.com"];

NSString *string4 = [NSString stringWithContentsOfURL:url encoding:NSUTF8StringEncoding error:nil];

4.获取字符串长度
NSString *string5 = @"你是怪兽吗,我都受不了你了";
NSUInteger length = string5.length;

5.截取字符串
NSString *substring1 =[string5 substringToIndex:5]; //截取从字符串开头到to位置的字符串

NSString *subString2 = [string5 substringFromIndex:6]; //截取from后面的字符串

NSString *substring3 = [string5 substringWithRange:NSMakeRange(2, 2)];  // 截取第x个位置开始,长度为y的字符串

6.获取字符串中的某个字符
NSString *string6 = @"abcdefg";
char c =[string6 characterAtIndex:0];  //根据字符串中的位置  来获取一个字符

7.比较两个字符串是否相等
   if( [String5 isEqualToString:String6 ])
   {
       NSLog(@"字符串内容相等");
   }
   else
   {
       NSLog(@"内容不相等");
   }

8.比较两个字符串的大小
    NSString *cmpString1 = @"hehehe";
    NSString *cmpString2 = @"hahaha";
    NSComparisonResult result = [cmpString1 compare:cmpString2];
    switch (result) {
        case NSOrderedAscending:
        {
            NSLog(@"cmpString1<cmpString2,升序");
            break;
        }
        case NSOrderedSame:
        {
            NSLog(@"cmpSring1= cmpString2");
            break;
        }
        case NSOrderedDescending:
        {
            NSLog(@"cmpString 1 >cmpString2,降序");
            break;
        }
    }

9.根据字符串拿到对应的range(位置和长度)
NSRange range = [string5 rangeOfString:@"你"];
打印range有两种方法:
NSLog(@"%@",[NSValue valueWithRange:range]);  //封装成一个对象来输出
NSLog(@"%ld,%ld",range.location,range.length);  //将成员逐个输出

10.判断字符串中是否有xxx前缀 或 xxx后缀
NSString *string7 = @"http://www.baidu.com";
BOOL = flag [string7 hasPrefix:@"http://"];

11.判断是否为 .jpg.png 后缀
NSString *string8 = @"xxxxx.jpg";
BOOL flag = [string8 hasSuffix:@".jpg"];

12.字符串的拼接
NSString *string9 = @"www.baidu.com";
NSString *string10 =[ @"http://" stringByAppendingString:string9];

NSString *string11 = @"http://static.bigstockphoto.com";
NSString *string12 = @"images/homepage/2016_popular_photo_categories.jpg";

NSString *string13 = [string11 stringByAppendingFormat:@"/%@",string12];  //连接两个字符串  并且第二个字符串是按一定格式传进来的
NSString *string14 = [string11 stringByAppendingPathComponent:string12];  //用于拼接文件夹路径  不适于拼接网址  自动在两个字符串中间补充/   

13.取出最后一个反斜杠/ 后面的内容
NSString *string15 =[string14 lastPathComponent];

14.字符串的替换
NSString *string16 = [string5 stringByReplacingOccurrencesOfString:@"你" withString:@"他"];  //把你换成他

15.分割字符串为数组
NSString *string17  = @"aa-bb-cc-dd-ee";
NSArray *array = [string17 componentsSeparatedByString:@"-"];  // 以"-"为分隔符,将原字符串内容进行分割,分割得到的结果放到一个数组里面,作为返回值

由于NSMutableString继承于NSString,所以以上方法NSMutableString都拥有,不过NSMutableString还拥有一些独有的方法

1.在指定位置去插入一个字符串
NSMutableString *mString = [NSMutableString stringWithString:@"你好呵呵"];
[mString insertString:@"啊啊啊" atIndex:3];

2.在字符串末尾添加一个字符串
[mString appendString:@"You are bitch"];

3.在字符串的末尾添加多个字符串
[mString appendFormat:@"%@%@",@"嘎嘎",@"Nick" ];

4.删除指定位置的字符串
[mString deleteCharactersInRange:NSMakeRange(3, 2)];



0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:623次
    • 积分:75
    • 等级:
    • 排名:千里之外
    • 原创:7篇
    • 转载:1篇
    • 译文:0篇
    • 评论:0条
    文章分类
    文章存档