A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 任子杰 中级黑马   /  2015-10-29 01:26  /  1883 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. #import <Foundation/Foundation.h>

  2. int main(int argc, const char * argv[]) {
  3.     @autoreleasepool {
  4.       
  5.         
  6.         NSString *str1=@"abc";
  7.         NSString *str2=@"Abc";
  8.         NSString *str3=[NSString stringWithFormat:@"abc"];
  9.         //isEqualToString  区分大小写  返回值bool类型
  10.         if ([str1 isEqualToString:str2]) {
  11.             
  12.             NSLog(@"yes");
  13.         }else{
  14.         
  15.             NSLog(@"no");
  16.         
  17.         }
  18.         
  19.         
  20.         //compare 默认区分大小写 NSCaseInsensitiveSearch不区别大小写
  21.     NSComparisonResult result=[str1 compare:str2 options:NSCaseInsensitiveSearch];
  22.         
  23.         switch (result) {
  24.             case NSOrderedAscending:
  25.                 NSLog(@"a<b,升序");
  26.                 break;
  27.             case NSOrderedDescending:
  28.                 NSLog(@"a>b,降序");
  29.                 break;
  30.             case NSOrderedSame:
  31.                 NSLog(@"a==b,相等");
  32.                 break;
  33.             default:
  34.                 break;
  35.         }
  36.         
  37.         //hasPrefix 前缀检测 返回值为bool类型 [url hasPrefix:@"http://"]用方括号括起来
  38.         NSString *url=@"http://www.baidu.com";
  39.         if ([url hasPrefix:@"http://"]) {
  40.             NSLog(@"这是一个网址");
  41.         }else{
  42.         
  43.             NSLog(@"这不是一个网址");
  44.         }
  45.         
  46.         //hasSuffix  后缀
  47.         if ([url hasSuffix:@"du.com"]) {
  48.             NSLog(@"这是一个网址");
  49.         }else{
  50.             
  51.             NSLog(@"这不是一个网址");
  52.         }
  53.         
  54.         
  55.         
  56.         NSString *str4=@"asdasdasdasdascatincsadadlajs;";
  57.         NSString *str5=@"catin=";
  58.         //查找子字符串返回首次出现位置 和长度
  59.         NSRange range= [str4 rangeOfString:str5];
  60.         // 查找不到range.location会返回 NSNotFound range.length返回为0
  61.         if (range.location!=NSNotFound || range.length!=0) {
  62.             
  63.             NSLog(@"%lu\n%lu",range.location,range.length);
  64.             
  65.         }else{
  66.         
  67.             NSLog(@"没有找到....");
  68.         }
  69.         
  70.         
  71.         
  72.         
  73.     }
  74.     return 0;
  75. }
复制代码

黑马程序员--字符串比较学记笔记
自己总结的字符串比较 新手勿喷


NSLog(@"%ld",[str1 length]);   //求字符串长度

NSLog(@"%c", [str1 characterAtIndex:1]);//获取字符串中的字符

BOOL ret =  [str1 isEqualTo:str2];//比较两个字符串是否相等,相等返回YES(1),不相等返回NO(0)   (BOOL   YES(1)  NO(0))

long ret1 = [str1 compare:str2];//比较两个字符串的大小,str1大于 返回1  相等返回0   小于返回-1

long ret2 = [str1 caseInsensitiveCompare:str2];//不区分大小写比较字符串大小

NSString * ptr = [str2 uppercaseString];//将字符串中的所有小写字符转换成大写 不改变原来的字符串

ptr = [str1 lowercaseString];//将字符串中的所有大写字符转换成小写 不改变原来的字符串

ptr = [str3 capitalizedString];//将字符串中出现的第一个字母转换成大写,其余字母小写

NSString * str4 = @"hello world";

NSRange range = [str4 rangeOfString:@"wr"];//查找子串,找不到返回NSNotFound 找到返回location和length

if (range.location != NSNotFound) {

    NSLog(@"%ld %ld",range.location, range.length);

}

NSString * str5 = @"helloworld";

NSString * ptr1 = [str5 substringToIndex:4];//字符串抽取 从下标0开始到4 不包括4

NSString * ptr2 = [str5 substringFromIndex:5];//从下标5开始抽取到字符串结束 包括5

NSRange range1 = {4,3};//结构体初始化

NSString * ptr3 = [str5 substringWithRange:range1];//在range指定范围内抽取

NSString * ptr4 = [str5 substringWithRange:NSMakeRange(4,3)];//NSMakeRange可以生成一个结构体



NSString * str = @"www.1000phone.com";

BOOL ret = [str hasPrefix:@"www"];//判断字符串是否以指定字符串开头
NSString * str1 = @"1.txt";
BOOL ret1 = [str hasSuffix:@".txt"];//判断字符串是否以指定的字符串结尾



NSMutableString可变字符串(动态增加和减少的)   继承于NSString可以使用NSString的所有方法

NSMutableString * str =  [[NSMutableString alloc]initWithString:@"hello"];//将不可变的字符串转换为可变的字符串

[str insertString:@"123" atIndex:1];//在指定下标(不要越界)位置插入NSString类型字符串

[str appendString:@"123"];//在字符串末尾追加字符串

[str deleteCharactersInRange:NSMakeRange(0, 2)];//从指定下标删除length个字符

[str setString:@"qianfeng"];//修改字符串亦称对该可变字符串赋值

[str replaceCharactersInRange:NSMakeRange(3, 1) withString:@"ios"];//将指定下标位置的length个字符替换为指定的字符串

5 个回复

倒序浏览
赵存金 来自手机 中级黑马 2015-10-29 08:42:12
沙发
不错啊。。加油
回复 使用道具 举报
顶你啊,,别说没定哦!
回复 使用道具 举报
杨传坤 来自手机 中级黑马 2015-10-29 11:38:00
板凳
加油⊙▽⊙
回复 使用道具 举报
谢谢大家
回复 使用道具 举报
厉害 看不懂
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马