例如,要截取一个字符串中,两个指定字符串中间的字符串,OC截取方法以下:字符串
// 要截取 "> 和 </ 之间的汉字内容:string
@implementationViewControllerit
- (void)viewDidLoad {io
[super viewDidLoad];import
NSString *string = @"<a href=\"http\">这是要截取的内容</a>";方法
NSRange startRange = [string rangeOfString:@"\">"];im
NSRange endRange = [string rangeOfString:@"</"];view
NSRange range = NSMakeRange(startRange.location + startRange.length, endRange.location - startRange.location - startRange.length);vi
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);
}