iOS - 开发技巧iOS开发iOS开发攻城狮的集散地

iOS - NSRange与字符串截取

2018-01-22  本文已影响195人  SkyMing一C
图片源于网络

NSRange

    typedef struct _NSRange {
        NSUInteger location;
        NSUInteger length;
    } NSRange;

NSRange的创建

  1. 通过结构体变量访问成员

    NSRange range;
    //通过结构体变量访问成员
    range.location = 3;
    range.length = 2;
    
  2. 结构体变量整体赋值

    NSRange range;
    //结构体变量整体赋值
    range = (NSRange){5,3};
    NSRange r2 = {4,5};  //最简单的
    NSRange r3 = {.location = 3,.length = 5};
    
  3. NSMakeRange函数(OC中建议使用这种)

    NS_INLINE NSRange NSMakeRange(NSUInteger loc, NSUInteger len) {
    NSRange r;
    r.location = loc;
    r.length = len;
    return r;
    }
    
    • NSMakeRange函数的作用给 NSRange结构体变量赋值
    //NSMakeRange函数的作用给 NSRange结构体变量赋值
    NSRange r4 = NSMakeRange(3, 3);
    NSString *str = NSStringFromRange(r4);//将一个结构体转化成字符串
    

字符串的截取

 - (NSString *)substringFromIndex:(NSUInteger)from;
- (NSString *)substringToIndex:(NSUInteger)to;
 - (NSString *)substringWithRange:(NSRange)range;
//抽取指定范围的字符串
    NSString *string1 = @"0123456789";
    NSRange range1 = NSMakeRange(0, 4);//NSMakeRange这个函数的作用是从第0位开始计算,长度为4
    NSLog(@"从第0个字符开始,长度为4的字符串是:%@",[string1 substringWithRange:range1]);
    NSLog(@"抽取从头开始到第4个字符:%@",[string1 substringToIndex:4]);
    NSLog(@"抽取从第6个字符开始到末尾:%@",[string1 substringFromIndex:6]);

参考

NSRange 和 NSString 详解

上一篇 下一篇

猜你喜欢

热点阅读