2013-04-24 35 views
1

我使用下面的代碼來處理我的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 
         } 
       }]; 

我怎麼能知道當塊在其最後一次迭代這樣我就可以相應地同步我的程序?

謝謝。

回答

2

儘管存在塊,我們經常將這些塊與異步操作相關聯,但這些枚舉方法不會異步發生。它同步運行。你應該沒問題。

1

您可以在正則表達式後立即同步您的程序:

[regex enumerateMatchesInString: ... ]; 
[self syncMyProgram]; 
相關問題