NSRange
location 在字符串中的位置,从0开始。如果未找到需要查找的字符串,location值为-1。
length 查找字符串的长度。如果未找到需要查找的字符串,length值为0。
NSRange range = NSMakeRange(NSUInteger loc, NSUInteger len);
定义一个NSRange类型,NSMakeRange接收俩个参数,1个代表位置,1个代表长度
NSUInteger maxRange = NSMaxRange(NSUInteger loc, NSUInteger len);
定义字符串的最大范围,值为:loc + len;
BOOL b1 = NSLocationInRange(NSUInteger loc, NSRange range);
判断位置是否在限定范围内,!(loc<range.loc)&&(loc-range.loc<range.length)?YES:NO;
BOOL b2 = NSEqualRanges(NSRange range1, NSRange range2)
判断两个range的值是否相等:range1.location == range2.location && range1.length == range2.length;
NSRange range = NSUnionRange(range1, range2);
将range1和range2的值结合起来,得到一个新值:
range.location = range1.location
range.length取值:
(range1.location>range2.location || range1.location<range2.location) && range1.length>range2.length
range.length = range1.length
range1.location>range2.location && range1.length<range2.length
range.length = range2.length
range1.location<range2.location && range1.length<range2.length
range.length = range2.location + range2.length - range1.location
NSRange range = NSIntersectionRange(range1, range2);
获取range1和range2之间共同的区域,赋值给range。如果没有共同范围,range={0,0};
NSRange range = NSRangeFromString(NSString *aString);
将字符串格式转换为NSRange类型的值接收格式@"1,2"或者@"{1,2}"
NSString *aString = NSStringFromRange(NSRange range);
将range的值用字符串的格式输出。即{range.location,range.length};