假设我有以下字符串:
bla bla bla bla我不知道写什么START 名字1 END更多 bla bla bla bla我不知道写什么START 名字2 END更多 bla bla bla bla我不知道该怎么写START 名字3 结束
我想提取以下数组:
名称1
名称2
名称3
使用iOS SDK的最佳方法是什么?
答案 0 :(得分:3)
试试这个:
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);
}
刚刚注意到你想要这个用Regex ......当然不是这个,但也许它有帮助!
答案 1 :(得分:1)
使用
NSRegularExpression regularExpressionWithPattern:@"(?<=START ).*?(?= END)"
另见Use regular expression to find/replace substring in NSString
答案 2 :(得分:0)
使用正则表达式执行此操作:
(?<=START\s)(.+?)(?=\sEND)