iOS 截取字符串中两个指定字符串中间的字符串方法

时间:2022-09-20 08:39:19

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

?
1
2
3
4
5
6
7
8
9
10
11
12
// 要截取 "> 和 </ 之间的汉字内容:
@implementation ViewController
- (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

运行结果:

iOS 截取字符串中两个指定字符串中间的字符串方法

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

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// NSString 分类中实现如下方法:
#import "NSString+Extension_NSString.h"
@implementation NSString (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"
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad {
 [super viewDidLoad];
 NSString *string = @"<a href=\"http\">这是要截取的内容</a>";
 NSString *result = [string subStringFrom:@"\">" to:@"</"];
 NSLog(@"%@",result);
}
// 这样使用起来更方便,简洁

以上这篇iOS 截取字符串中两个指定字符串中间的字符串方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:http://blog.csdn.net/Setoge/article/details/52075818