• OC字符串查找


    • OC中字符串查找操作
     1 #import <Foundation/Foundation.h>
     2 
     3 int main(int argc, const char * argv[]) {
     4     @autoreleasepool {
     5         //查找字符串
     6         NSString *str1=@"abcdef";
     7         NSString *str2=@"abc";
     8         NSRange range1=[str1 rangeOfString:str2];//从str1字符串中找str2字符串出现的位置
     9         NSLog(@"位置为:%ld,长度为:%ld",range1.location,range1.length);//打印结果:位置为:0,长度为:3
    10         NSLog(@"%@",NSStringFromRange(range1));//location=0, length=3
    11         
    12         NSString *str3=@"k";
    13         NSString *str4=@"aakcckdd";
    14         //求字符串str3在str4第一次出现的位置
    15         NSRange r1=[str4 rangeOfString:str3];//rangeOfString 如果找不到,location为NSNotFound,length为0
    16         //计算第一次str3在str4出现的位置并从此位置向后找,剩下的长度为str4总长度减去已经找到第一个所在位置的长度
    17         //(r1.location+r1.length):表示第一次查找到符合的位置
    18         //str4.length-(r1.location+r1.length):表示从上次查找到得位置起到最后所剩的长度
    19         NSRange r2= {(r1.location+r1.length),str4.length-(r1.location+r1.length)};
    20         NSLog(@"第一次出现的位置为:%ld,长度为:%ld",r1.location,r1.length);//结果为:2,1
    21         NSLog(@"第二次开始查找的位置为:%ld,需要查找的长度为:%ld",r2.location,r2.length);//结果为:3,5
    22         //查找第二次str3在str4中出现的位置
    23         NSRange range2=[str4 rangeOfString:str3 options:0 range:r2];
    24         NSLog(@"第二次出现的位置为:%ld,长度为:%ld",range2.location,range2.length);//结果为:5,1
    25         
    26         //NSRange 结构体
    27         /* typedef struct _NSRange {
    28          NSUInteger location;  位置
    29          NSUInteger length;    长度
    30          }  NSRange;
    31          */
    32 
    33     }
    34     return 0;
    35 }
  • 相关阅读:
    令Django 视图有默认 login_required
    令Django 视图有默认 login_required
    Python 资源
    Python 资源
    小米3 日历 同步google日历
    小米3 日历 同步google日历
    sql语句 case
    DDOSIM安装
    DDos工具tfn2k的编译
    RPM和YUM
  • 原文地址:https://www.cnblogs.com/studyrecord/p/4824087.html
Copyright © 2020-2023  润新知