What happens if you try:
NSPredicate *filterPredicate = [NSPredicate predicateWithFormat:@"name == %@", searchText];
NSArray *temp = [YOUR_ARRAY filteredArrayUsingPredicate:filterPredicate]; ?
EDIT
Try this:
NSMutableArray *searchResults = [[NSMutableArray alloc] init];
[YOUR_ARRAY enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
Contact *contact = obj;
if ([[contact name] isEqualToString:searchText])
[searchResults addObject:contact];
}];
//The search results array should now contain the matching items:
NSLog(@"Search Results:%@", searchResults);