我正在使用以下代码来操作我的str
字符串:
NSString *pattern = @"\\['(.*?)',(.*?),(.*?),(.*?),(.*?)\\]";
NSRegularExpression *regex = [NSRegularExpression
regularExpressionWithPattern:pattern
options:NSRegularExpressionCaseInsensitive
error:nil];
[regex enumerateMatchesInString:str
options:0
range:NSMakeRange(0, [str length])
usingBlock:^(NSTextCheckingResult *result, NSMatchingFlags flags, BOOL *stop){
if (result != nil)
{
// do something with matched string
}
}];
如何知道块何时处于最后一次迭代中,以便我可以相应地同步我的程序?
感谢。
答案 0 :(得分:2)
尽管存在我们经常与异步操作相关联的块,但这些类型的枚举方法并不是异步发生的。它同步运行。你应该没事。
答案 1 :(得分:1)
您可以在正则表达式后立即同步您的程序:
[regex enumerateMatchesInString: ... ];
[self syncMyProgram];