NSMakeRange,substringWithRange,substringToIndex,substringFromIndex区别和联系

标签: 

substringwithrange

 

nsmakerange

 

substringtoindex

 

substringfromindex

分类: ios相关技术

typedef NSRange *NSRangePointer;

NS_INLINE NSRange NSMakeRange(NSUInteger loc, NSUInteger len) {
    NSRange r;
    r.location = loc;
    r.length = len;
    return r;
}
NSMakeRange是一个结构体类型,包含两个参数,位置和长度。表示字符串要传进来从哪里开始的位置和需要的长度。

substringWithRange需要传进来NSRange类型,表示从哪里开始截取和长度,返回字符串类型。例如,       NSString *bankCardString = [respDict objectForKey:kQFTrackData];
        NSRange bankRang = NSMakeRange(0, 3);
        NSString *bankStr1 = [bankCardString substringWithRange:bankRang];

substringToIndex表示从第一个字符串开始截取,到指定长度位置,但是不包括该指定位置位置字符串,例如       NSString *balanceDateString = [respDict objectForKey:kQFTime];
        NSString *ymdString = [balanceDateString substringToIndex:10];
        //再从已有字符串中截取
        //年
        NSString *yearStr = [ymdString substringToIndex:4];

substringFromIndex表示从指定位置开始截取字符串到最后,所截取位置包含该指定位置。

        NSRange monthRang = NSMakeRange(5, 2);
        NSString *monthStr = [ymdString substringWithRange:monthRang];
        //日
        NSString *dayStr = [ymdString substringFromIndex:8];


NS_INLINE NSRange NSMakeRange(NSUInteger loc, NSUInteger len) {
    NSRange r;
    r.location = loc;
    r.length = len;
    return r;
}
NSMakeRange是一个结构体类型,包含两个参数,位置和长度。表示字符串要传进来从哪里开始的位置和需要的长度。

substringWithRange需要传进来NSRange类型,表示从哪里开始截取和长度,返回字符串类型。例如,       NSString *bankCardString = [respDict objectForKey:kQFTrackData];
        NSRange bankRang = NSMakeRange(0, 3);
        NSString *bankStr1 = [bankCardString substringWithRange:bankRang];

substringToIndex表示从第一个字符串开始截取,到指定长度位置,但是不包括该指定位置位置字符串,例如       NSString *balanceDateString = [respDict objectForKey:kQFTime];
        NSString *ymdString = [balanceDateString substringToIndex:10];
        //再从已有字符串中截取
        //年
        NSString *yearStr = [ymdString substringToIndex:4];

substringFromIndex表示从指定位置开始截取字符串到最后,所截取位置包含该指定位置。

        NSRange monthRang = NSMakeRange(5, 2);
        NSString *monthStr = [ymdString substringWithRange:monthRang];
        //日
        NSString *dayStr = [ymdString substringFromIndex:8];
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值