2014-02-07 69 views
0

有沒有辦法設置NSPredicate來搜索NSArray中的所有項目?NSPredicate和NSArray

類似:

NSPredicate *predicate = [NSPredicate predicateWithFormat: @"group.name == %@", arrayOfNames]; 

回答

3

使用 「IN」,而不是 「==」 如果右邊是一個數組或設置:

[NSPredicate predicateWithFormat: @"group.name IN %@", arrayOfNames] 
+0

哈!我知道有一種方法,但不記得語法,謝謝! – Padin215

+0

@ Log139:接受它,所以這個問題被標記爲完成:) –

0

是的,你可以使用NSPredicateNSArray像這樣

NSArray *data = [NSArray arrayWithObject:[NSMutableDictionary dictionaryWithObject:@"foo" forKey:@"BAR"]];  
NSArray *filtered = [data filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"(BAR == %@)", @"foo"]];