iOS字符串常用操作集合

来源:互联网 发布:知乎怎么找匿名回答 编辑:程序博客网 时间:2024/05/18 14:24

一。iOS 字符串截取


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];

}

 

2011-07-05 20:59:34.169 Q[9069:207]   a: 123456798 

2011-07-05 20:59:34.171 Q[9069:207]   a: 1456798 


二。字符串替换

使用NSString *strUrl = [urlString stringByReplacingOccurrencesOfString:@" " withString:@""];可以去掉空格,注意此时生成的strUrl是autorelease属性的,所以不必对strUrl进行release操作!


三。字符串搜索(判断相同字符串)

NSRange searchRange = [str rangeOfString:@"five"];
    if (searchRange.location != NSNotFound) {
        NSLog(@"搜索 location  %d   %d",searchRange.location,searchRange.length);
    }

四。字符串拼接

NSString* string; // 结果字符串
02NSString* string1, string2; //已存在的字符串,需要将string1和string2连接起来
03 
04//方法1.
05string = [NSString initWithFormat:@"%@,%@", string1, string2 ];
06 
07//方法2.
08string = [string1 stringByAppendingString:string2];
09 
10//方法3 .
11string = [string stringByAppendingFormat:@"%@,%@",string1, string2];
经常用的是第二种方法。

五。字符串分割

  1. NSString *nstring = @"美国,加拿大,澳大利亚,津巴布韦,埃及";  
  2.     NSArray *array = [nstring componentsSeparatedByString:@","];  
  3.     for (int i = 0; i < [array count]; i++) {  
  4.         NSLog(@"string:%@", [array objectAtIndex:i]);  
  5.     }  

结果:

[cpp] view plaincopy
  1. 2012-06-14 11:49:10.443 NSString[2481:f803] string:美国  
  2. 2012-06-14 11:49:10.443 NSString[2481:f803] string:加拿大  
  3. 2012-06-14 11:49:10.443 NSString[2481:f803] string:澳大利亚  
  4. 2012-06-14 11:49:10.443 NSString[2481:f803] string:津巴布韦  
  5. 2012-06-14 11:49:10.444 NSString[2481:f803] string:埃及 





0 0
原创粉丝点击