---iOS开发 截取字符串中两个指定字符串中间的字符串---

例如,要截取一个字符串中,两个指定字符串中间的字符串,OC截取方法如下:

// 要截取 "> 和 </ 之间的汉字内容:

@implementationViewController

- (void)viewDidLoad {

[super viewDidLoad];

NSString *string = @"<a href=\"http\">这是要截取的内容</a>";

NSRange startRange = [string rangeOfString:@"\">"];

NSRange endRange = [string rangeOfString:@"</"];

NSRange range = NSMakeRange(startRange.location + startRange.length, endRange.location - startRange.location - startRange.length);

NSString *result = [string substringWithRange:range];

NSLog(@"%@",result);

}

@end

 

运行结果: 

 

这是要截取的内容

 

 

 

为了使用方便,我们可以给 NSString 分类添加一个截取字符创的方法,直接返回截取后的字符串:代码如下

 

// NSString 分类中实现如下方法:

#import"NSString+Extension_NSString.h"

 

@implementationNSString (Extension_NSString)

// 截取字符串方法封装// 截取字符串方法封装

- (NSString *)subStringFrom:(NSString *)startString to:(NSString *)endString{

NSRange startRange = [self rangeOfString:startString];

NSRange endRange = [self rangeOfString:endString];

NSRange range = NSMakeRange(startRange.location + startRange.length, endRange.location - startRange.location - startRange.length);

return [self substringWithRange:range];

}

@end

// 控制器中直接用字符串调用:

#import"ViewController.h"

#import"NSString+Extension_NSString.h"

 

@interfaceViewController ()

@end@implementationViewController

- (void)viewDidLoad {

[super viewDidLoad];

NSString *string = @"<a href=\"http\">这是要截取的内容</a>";

NSString *result = [string subStringFrom:@"\">" to:@"</"];

NSLog(@"%@",result);

}

posted @ 2019-10-09 15:54  给me一首歌的时间  阅读(265)  评论(0编辑  收藏  举报