- (NSRange)rangeOfString:(NSString *)searchString;//查找字符串中是包涵在某个字符串,并返回其开始位置和长度

例:

  1. NSRange range = [link rangeOfString:@"target=_blank"];
  2.  
  3. if(range.location != NSNotFound)
  4.  
  5. {
  6.  
  7. [[UIApplication sharedApplication] openURL:[NSURL URLWithString:link]];
  8.  
  9. }
-(BOOL) hasPrefix:(NSString *) //astring;检查字符串是否以astring开头; 
-(BOOL) hasSuffix:(NSString *) //astring;检查字符串是否以astring结尾;
 
1.) lowercaseString: 将字符串转换为小写
2.) uppercaseString: 将字符串转换为大写
3.) capitalizedString:将字符串的首字母大写
 
忽略大小写比较
  1. //忽略大小写进行比较,返回值与compare一样
  2. result = [str1 caseInsensitiveCompare:str2];
  3. if (result == NSOrderedAscending) {
  4. NSLog(@"右边 > 左边");
  5. }else if(result == NSOrderedSame){
  6. NSLog(@"内容相同");
  7. }else if (result == NSOrderedDescending){
  8. NSLog(@"左边 > 右边");
  9. }
  1. //拓展名
  2. //获取拓展名,不带.
  3. NSString *str2 = @"Users/CentralPerk/Desktop/test.txt";
  4. NSLog(@"%@",[str2 pathExtension]);
  5. //添加拓展名,不需要带.
  6. NSLog(@"%@",[str2 stringByAppendingPathExtension:@"mp3"]);
  7. //删除拓展名,带.一块删除
  8. NSLog(@"%@",[str2 stringByDeletingPathExtension]);
  1. //字符串的截取
  2. NSString *str = @"";
  3. NSLog(@"%@",[str substringFromIndex:]);
  4. NSLog(@"%@",[str substringToIndex:]);
  5. NSLog(@"%@",[str substringWithRange:NSMakeRange(, )]);
  6.  
  7. //用指定字符串分割字符串,返回一个数组
  8. NSArray *array = [@"1,2,3,4,5,6" componentsSeparatedByString:@","];
  9. NSLog(@"%@",array);
  10.  
  11. //将数组中的字符串组合成一个文件路径
  12. NSMutableArray *components = [NSMutableArray array];
  13. [components addObject:@"Users"];
  14. [components addObject:@"CentralPerk"];
  15. [components addObject:@"Desktop"];
  16. NSString *path = [NSString pathWithComponents:components];
  17. NSLog(@"%@",path); //Users/CentralPerk/Desktop
  18.  
  19. //将一个路径分割成一个数组
  20. NSArray *array1 = [path pathComponents];
  21. NSLog(@"%@",array1);
  22.  
  23. //判断是否为绝对路径(依据:是否以'/'开始)
  24. path = @"/Users/CentralPerk/Desktop";
  25. NSLog(@"%i",[path isAbsolutePath]);
  26.  
  27. //获取最后一个目录
  28. NSLog(@"%@",[path lastPathComponent]);
  29.  
  30. //删除最后一个目录
  31. NSLog(@"%@",[path stringByDeletingLastPathComponent]);
  32.  
  33. //拼接一个目录
  34. NSLog(@"%@",[path stringByAppendingPathComponent:@"aaa"]); ///Users/CentralPerk/Desktop/aaa
  35. NSLog(@"%@",[path stringByAppendingString:@"aaa"]); ///Users/CentralPerk/Desktopaaa
  36. NSLog(@"%@",[path stringByAppendingFormat:@"%@%@",@"b",@"c"]); ///Users/CentralPerk/Desktopbc

查看字符串中是否包含某个字符串

  1. NSString *str1 = @"abcd";
  2.  
  3. NSString *str = @"a";
  4.  
  5. //在str1这个字符串中搜索\n,判断有没有
  6.  
  7. if ([str1 rangeOfString:str].location != NSNotFound) {
  8.  
  9. NSLog(@"这个字符串中有a");
  10.  
  11. }
  12.  
  13. //rangeOfString 前面的参数是要被搜索的字符串,后面的是要搜索的字符
  14.  
  15. //NSNotFound 表示请求操作的某个内容或者item没有发现,或者不存在

截取字符串到指定字符

  1. NSString *string = @"abcdefghijklmn";
  2. NSRange range = [string rangeOfString:@"h"];
  3. string = [string substringToIndex:range.location];
  4. NSLog(@"string:%@",string);

NSString的几个方法(rangeOfString,hasPrefix,hasSuffix,改变大小写...)的更多相关文章

  1. iOS NSString中的搜索方法rangeOfString

    NSString *str = @"your://aaa?backscheme=my"; //在str中查找“backscheme=”,并返回一个NSRange类型的值,我们可以通 ...

  2. 知识点整理01- 引用对象被子方法赋值后不改变;CheckBox 取消选择不可用问题

    1. Class 实体是引用类型,但传入方法时是null的情况在子方法中不论怎么赋值当 FirstService.SetPerson(person,ref tempMsg); 执行后Person都是n ...

  3. IOS成长之路-Nsstring中搜索方法rangeOfString

    NSString *str1 = @"can you \n speak English"; NSString *str = @"\n"; //在str1这个字符 ...

  4. IOS成长之路-Nsstring搜索方法rangeOfString

    NSString *str1 = @"can you \n speak English"; NSString *str = @"\n"; //在str1该字符串 ...

  5. Objective-C中NSString转NSNumber的方法

    本文转载至 http://www.linuxidc.com/Linux/2013-02/78866.htm 在Objective-C中,以数字格式组成的字符串经常需要转换为NSNumber对象后再使用 ...

  6. iOS NSString追加字符串的方法

    第一种: NSArray *array = [NSArray arrayWithObjects:@"Hello",@" ",@"world" ...

  7. iOS之NSString类中compare方法的陷阱

    typedef NS_ENUM(NSInteger, NSComparisonResult) {NSOrderedAscending = -1L, NSOrderedSame, NSOrderedDe ...

  8. 如果类的属性是copy的NSString类型 用set方法拦截时

    @property (nonatomic, copy) NSString *badgeValue; - (void)setBadgeValue:(NSString *)badgeValue { _ba ...

  9. iOS开发之--最简单的导航按钮更换方法/导航颜色的改变

    有很多时候,我们需要用到导航,那么更换导航的时候,是在那用那修改,还是自定义一个导航,或者是声明一个代理方法,经过查资料和对导航属性的一些了解,用一种方法最为简单,就是在入口类里面添加一个方法,调用偏 ...

随机推荐

  1. st-Spanning Tree

    st-Spanning Tree time limit per test 4 seconds memory limit per test 256 megabytes input standard in ...

  2. asp网站中使用百度ueditor教程

    1.根据网站类型及编码选择相应的ueditor版本,如我的网站编码为gb2312,则选择ueditor 1.43 asp gbk版.2.本机IE浏览器应为8.0或以上,8.0以下的ueditor 1. ...

  3. setter getter 属性 点语法

    转载自:http://liuyafang.blog.51cto.com/8837978/1543715 什么时setter,getter, 在OC里, 为实例变量赋zhi的方法称作setter(设置器 ...

  4. hdu1285 确定比赛名次(拓扑排序)

    确定比赛名次 Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 65536/32768K (Java/Other) Total Submis ...

  5. 空指针错误 java.lang.NullPointerException

    使用基本的JAVA数据类型,变量的值要么已经是默认值,如果没有对其正常赋值,程序便 不能通过编译,因此使用基本的JAVA数据类型(double,float,boolean,char,int,long) ...

  6. MVC工作流程

    1  浏览者 => 调用控制器,对它发出指令 2 控制器  => 按照指令选取一个合适的模型 3 模型    =>  按控制器指令取出相应的数据 4 控制器 =>  按指令选取 ...

  7. 转: 理解 JMeter 聚合报告(Aggregate Report)

    Aggregate Report 是 JMeter 常用的一个 Listener,中文被翻译为“聚合报告”.今天再次有同行问到这个报告中的各项数据表示什么意思,顺便在这里公布一下,以备大家查阅. 如果 ...

  8. qemu -hda /dev/sdc -m 1024 -vga std

    同事拿了个烂u盘让我给他做个启动盘,用cp *.iso /dev/sdc怎么也启动不了. 改用dd if=copied/20140923/debian-7.6.0-amd64-DVD-1.iso of ...

  9. Mac 生产力探究

    转载自:http://devtian.me/2015/04/15/about-my-productivity-tool-in-MacOSX/ ##密码管理器 1Password 1Password 是 ...

  10. Left/Right/Inner Join用法和区别

    left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录 right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录inner join(等值连接) 只 ...