iOS截取字符串(NSString)

截取字符串是很常用的功能,NSString的截取主要有三种方式(下面说的字符串字符下标都是从0开始数):

  • 截取某个下标之前的字符串,结果不包含下标对应的字符
  • 截取某个下标之后的字符串,结果包含下标对应的字符
  • 截取一段字符串
实现效果如下图:




下面分别说明:

1、截取某个下标之前的字符串,结果不包含下标对应的字符

代码如下:
    // 原字符串
    NSString *originalStr = @"Hello World";
    // 下标之前的子字符串,不含下标对应的字符
    NSString *toStr = [originalStr substringToIndex:5];
    // 结果为“Hello”

这里字母"o"对应的下标为4,因为结果不包含下标对应的字符,所以要截取5之前的字符串。

2、截取某个下标之后的字符串,结果包含下标对应的字符

代码如下:
    // 原字符串
    NSString *originalStr = @"Hello World";
    // 下标之后的子字符串,包含下标对应字符
    NSString *fromStr = [originalStr substringFromIndex:6];
    // 结果为“World”

这里字母”W“对应的下标为6,因为结果包含下标对应的字符,所以从6开始截取。


3、截取一段字符串

代码如下:
    // 原字符串
    NSString *originalStr = @"Hello World";
    // 下标之间的子字符串:第一个参数为开始下标,第二个参数为长度
    NSString *subStr = [originalStr substringWithRange:NSMakeRange(6, 2)];
    // 结果为“Wo”

这里用到了一个Range类,这个方法有两个参数,第一个是截取的开始下标,”W“的下标为6,所以这里是从6开始;第二个参数,以前我以为是结束的下标,但是用起来频频闪退,后来才发现是表示 长度,也就是我这里截取从下标6开始2个长度的字符,所以结果是”Wo“。



可以在我的GitHub下载我的Demo工程: https://github.com/Cloudox/SubStringDemo 有帮助的话欢迎Star和Fork~

  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值