[绍棠] NSString 字符串处理:截取字符串、匹配字符串、分隔字符串

19 篇文章 0 订阅
1 篇文章 0 订阅

1.定义一个字符串a, 截取a 的某一个部分,复制给b, b必须是int型

  NSString *a = @"1.2.30";

    int  b= [[a substringWithRange:NSMakeRange(4,2)] intValue]; 

  NSLog(@"a:%@  \n",a  );

  NSLog(@"b:%d",b  );

 

Output : 2011-07-05 11:49:08.170 Q[4005:207]   a:1.2.30  

2011-07-05 11:49:08.172 Q[4005:207]            b:30


解析如下:substringWithRange: 专门截取字符串的一块肉 

           NSMakeRange(4,2)    从第4个字符开始截取,长度为2个字符,(字符串都是从第0个字符开始数的哦~!)

             b = [a intValue]; 将 a 转换为 整数型

       b = [a floatValue];   将 a 转换为 小数型

       b = [a boolValue]; 将 a 转换为 布尔型(true /  false)

       b = [a integerValue]; 将 a 转换为 整数型

            b = [a longLongValue]; 将 a 转换为 长整型


2。 字符串截取到第n位  (substringToIndex: n)(第n 位不算再内)

 

- (void)viewDidLoad

{

    NSString  *a = @"i like long dress";

  NSString *b = [a substringToIndex:4];

    NSLog(@"\n b: %@",b);

}

 b: i li

     


3。字符串从第n 位开始截取,直到最后 (substringFromIndex:n)(包括第 n 位)

 

- (void)viewDidLoad

{

    NSString  *a = @"i like long dress";

    NSString *b = [a substringFromIndex:4];

    NSLog(@"\n b: %@",b);

}

 

 

       

 

       

b: ke long dress

     

NSMutableString  为可变的字符串

   NSString      为不可变的字符串

 

-(void)viewDidLoad

{

   NSMutableString *a = [[NSMutableString  alloc]initWithString:@"123456798"];

   NSLog(@" \n a:  %@\n",a);

   [a deleteCharactersInRange:NSMakeRange(1,2)];

   NSLog(@" \n a:  %@\n",a);

    [a release];

}




4.截取字符串

NSString*string =@"sdfsfsfsAdfsdf";
string = [string substringToIndex:7];//截取掉下标7之后的字符串
NSLog(@"截取的值为:%@",string);
[string substringFromIndex:2];//截取掉下标2之前的字符串
NSLog(@"截取的值为:%@",string);


5.匹配字符串
NSString*string =@"sdfsfsfsAdfsdf";
NSRangerange = [stringrangeOfString:@"f"];//匹配得到的下标
NSLog(@"rang:%@",NSStringFromRange(range));
string = [string substringWithRange:range];//截取范围类的字符串
NSLog(@"截取的值为:%@",string);


6.分隔字符串
NSString*string =@"sdfsfsfsAdfsdf";

NSArray *array = [string componentsSeparatedByString:@"A"]; //从字符A中分隔成2个元素的数组
NSLog(@"array:%@",array); //结果是adfsfsfs和dfsdf

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值