字符串的操作:取字符, 替换字符,字符拼接,转换,插入字符等

取字符

1.characterAtIndex:通过指定下标取字符
例子
NSString *str =@"y玩anglin";
NSLog(@"%C", [str characterAtIndex:1]);
结果: 2015-07-20 17:37:56.737 OC练习[1620:98525] 玩
*在这里可以注意一下:%C可以输出汉字,而%c只能输出字母
2.substringFromIndex :从哪开始截取,到最后,包括下标位置
例子
 NSString *str =@"nihao,wodemingzijiao1";
 NSLog(@"%@",[str substringFromIndex:5]);
 结果: 2015-07-20 17:56:28.408 OC练习     [1662:102656] ,wodemingzijiao1
3.substringToIndex :从开始截取到指定位置,不包括下标位置

例子

NSString *str =@"nihao,wodemingzijiao1";
NSLog(@"%@",[str substringToIndex:7]);
结果 :2015-07-20 18:00:25.539 OC练习[1695:103793] nihao,w
4.substringWithRange:输出范围字符串

有两种写法
(1)第一种方法:用NSRange定义一个结构体 ,提供两个变量,第一个是个起始位置,第二个变量是长度

例子
NSString *str =@"nihao,wodemingzijiao1";
NSRange range ={3 , 7};
NSLog(@"%@",[str substringWithRange:range]);
结果:2015-07-20 19:01:31.374 OC练习[1717:107047] ao,wode

(2)第二种方法 :用NSMakeRange直接定义起始位置和长度

例子
NSString *str =@"nihao,wodemingzijiao1";
NSLog(@"%@",[str substringWithRange:NSMakeRange(3, 7)]);
结果:2015-07-20 19:01:31.374 OC练习[1717:107047] ao,wode

替换字符

1.替换:stringByReplacingOccurrencesOfString

第一个参数 :字符串原来的部分
第二个参数 :要替换的内容

例子
 NSString *str =@"山山没事喜欢玩游戏";
    NSString *strNew =[str stringByReplacingOccurrencesOfString:@"山山" withString:@"星宇"];
    NSLog(@"%@" , strNew);
   结果: 2015-07-25 16:56:15.958 OC05_NSString[411:13548] 星宇没事喜欢玩游戏
2.范围的替换:replaceCharactersInRange
replaceCharactersInRange有三个参数

第一个参数: 字符串
第二个参数: 通过下标和长度得到的要替换的原字符
第三个参数: 要替换的内容

同范围性取字符一样,范围性替换也有两种写法
(1)第一种方法:用NSRange定义一个结构体 ,提供两个变量,第一个是个起始位置,第二个变量是长度
例子
NSMutableString *str=[NSMutableString stringWithString:@"nihao,wo deming zi jiao yanglin"];
 NSRange range ={3,7};
 [str replaceCharactersInRange:range withString:@"hao"];
NSLog(@"%@",str);
(2)第二种方法 :用NSMakeRange直接定义起始位置和长度
例子
NSMutableString *str=[NSMutableString stringWithString:@"nihao,wo deming zi jiao yanglin"];
 [str replaceCharactersInRange:NSMakeRange(3, 7) withString:@"hao"];
 NSLog(@"%@",str);
 结果: 2015-07-25 17:01:53.169 OC05_NSString[429:15278] nihhaoeming zi jiao yanglin

3.全替换

例子
NSMutableString *str=[NSMutableString stringWithString:@"nihao,wo deming zi jiao yanglin"];
[str setString:@"11"];
NSLog(@"%@",str);
结果:2015-07-25 17:15:09.906 OC05_NSString[441:19364] 11

拼接字符

1.直接拼接: appendString

两个参数: 都是字符或者字符串,第二个字符串拼接在第一个字符串后面

 NSMutableStrng *str=[NSMutableString stringWithString:@"nihao"];
[str appendString:@"11"];
NSLog(@"%@",str);
结果为:2015-07-25 17:34:02.711 OC05_NSString[467:25508] nihao11
2.不可变字符串的拼接:stringByAppendingString

例子
要定义一个新的字符串来接收结果

    NSString *str = @"liushanshan";
    NSString *str1 = @"yangli";
    NSString *newStr =[str stringByAppendingString:str1];
    NSLog(@"%@",newStr);
结果:2015-07-25 17:42:12.725 OC05_NSString[492:28135] liushanshanyangli
3.stringWithFormat 方法 可以把任意类型转化成字符串,然后进行拼接

例子

  CGFloat g =3.14;
  NSInteger a =100;
  NSString *str = [NSString stringWithFormat:@"%@,%ld , %g, %@",@"不好", a, g, @"liushanhsaRn"];
    NSLog(@"%@",str);
结果:2015-07-25 17:44:55.197 OC05_NSString[500:29215] 不好,100 , 3.14, liushanhsaRn

把字符串转换为一般数据类型

integerValue :把字符串变成基本数据类型,但是遇到字母停止
例子
      NSString *strNum=@"123p5";
        NSInteger num =[strNum integerValue];
        NSLog(@"%ld",num);
     结果:2015-07-20 19:23:19.272 OC练习[1823:115089] 123

插入字符

格式

insertString:插入内容 atIndex :插入位置下标

例子
NSMutableString *str=[NSMutableString stringWithString:@"nihao"];
 [str insertString:@"111" atIndex:3];
  NSLog(@"%@", str);
     结果: 2015-07-20 19:57:42.854 OC练习[1911:123322] nih111ao
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值