您的位置:首页 > 其它

常用结构体之NSRange用法

2015-09-20 15:58 302 查看

定义

NSRange在官方文档中如是定义:A structure used to describe a portion of a series—such as characters in a string or objects in an NSArray object.

即用来描述字符串中一部分字符或者NSArray中的一部分对象

NSRange的定义

typedef struct _NSRange

{

NSUInteger location;

NSUInteger length;

} NSRange;

NSRange是一个结构体,其中location是一个以0为开始的index,length是表示对象的长度。他们都是NSUInteger类型。


用法:

int main(int argc, const char * argv[]) {
NSString *string = @"i love using Xcode!";
//NSRange r = NSMakeRange(2, 3);
//查找某个字符串在string中的范围
NSRange r1 = [string rangeOfString:@"Xcode"];
//打印给定范围的子串
NSLog(@"%@",[string substringWithRange:r1]);
//打印搜索到的子串的范围
NSLog(@"loc:%ld, length:%ld",r1.location,r1.length);
//NSRange转换成NSString
NSLog(@"Range is: %@", NSStringFromRange(r1));
//如果找不到,length = 0,location == -1 == NSNotFound,(9223372036854775807)
NSRange r2 = [string rangeOfString:@"objective"];
NSLog(@"%d",NSNotFound);
NSLog(@"%d",(int)r2.location);

//NSString 转换成NSRange
NSRange r3=NSRangeFromString(@"{3, 3}");
NSLog(@"r3 is:%@",NSStringFromRange(r3));

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  NSRange