假设我有以下字符串:
bla bla bla bla 我不知道该写什么 START name 1 END 更多 bla bla bla bla 我不知道该写什么 START name 2 END 更多 bla bla bla bla 我不知道该写什么 START name 3 END
我想提取以下数组:
名称 1
名称 2
名称 3
使用 iOS SDK 的最佳方法是什么?
尝试这个:
NSArray *names = [yourString componentsSeparatedByString:@"START"];
NSArray *namesArray = [NSArray array];
for (int i = 1; i < [names count]; i++) {
NSString *thisLine = [names objectAtIndex:i];
NSString *name = [thisLine substringToIndex:[thisLine rangeOfString:@"END"].location];
[namesArray addObject:name];
NSLog(@"Your name: %@", name);
}
刚刚注意到您想要使用正则表达式...这当然不是,但也许它有帮助!
利用
NSRegularExpression regularExpressionWithPattern:@"(?<=START ).*?(?= END)"
要使用正则表达式执行此操作:
(?<=START\s)(.+?)(?=\sEND)