Foundation中的NSRange

本文介绍了NSRange在Xcode中的定义及应用,包括如何创建和实例化NSRange,使用NSMakeRange来指定位置和长度,以及利用NSRange进行正向和反向的字符串搜索。通过具体的代码示例展示了如何查找字符串的位置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


一、NSRange在Xcode中的的定义:

typedef struct _NSRange
{
   NSUInteger location; //结构体变量 location位置
   NSUInteger length; // 结构体变量length 表长度
} NSRange;
显而易见,NSRange是一个结构体,其中location是一个以0为开始的indexlength是表示对象的长度。他们都是NSUInteger类型。



二、创建NSRange并实例化:

NSRange range = NSMakeRange (25, 3);//将location和length分别赋值


三、搜索字符串


NSString *homebrew = @"Imperial India Pale Ale (IPA)"; //定义一个字符串
NSRange range = [homebrew rangeOfString:@"IPA"]; //rangeOfString查找字符串IPA在homebrew中的位置
if (range.length > 0)
 NSLog(@"Range is: %@", NSStringFromRange(range); //NSStringFromRange,将range转换为NSString类型后才能输出
 
上面的程序将输出Range is: {25, 3}。

而另外一个函数NSRangeFromString()则是将NSString转换为NSRange。

NSStringFromRange()方法,将一个NSRange返回一个NSString。



四、反向搜索字符串


NSString *homebrew = @"Imperial India Pale Ale (IPA)"; //定义一个字符串
NSRange range = [homebrew rangeOfString:@"ia" options:NSBackwardsSearch];//从字符串后往前开始查找

if (range.length > 0) //如果查找到的话
 NSLog(@"Range is: %@", NSStringFromRange(range)); //打印输出


上面的程序将输出:Range is: {12, 2}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值