Я сделал нечто похожее и пришел к выводу, что, как и cekisakurek, лучшим способом было объединить поля в общее поле (более подходящее для имени / фамилии)
- (NSString *)fullName {
return [NSString stringWithFormat:@"%@ %@", self.firstName, self.lastName];
}
, а затем фильтруется в этом поле с помощью 'contains [cd]'
[NSPredicate predicateWithFormat:@"fullName contains[cd] %@", self.searchBar.text];