Как объединить две строки для NSPredicate, то есть имя и фамилия
у меня естьPerson
Объект, который имеет дваNSString
свойства;firstName and lastName
, Я'м в настоящее время используетNSPredicate
вот так:
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"(firstName contains[cd] %@) OR (lastName contains[cd] %@)", searchText, searchText];
Так, например, скажу, что яя ищу имя"John Smith"
, В моей строке поиска, если я наберу"Joh"
, затемJohn Smith
появится в качестве опции. Это хорошо и хорошо, но если я наберу в"John Sm"
оно станет пустым.
Как я могу присоединиться к firstName и lastName вpredicate
так что если бы я искал"John Sm"
затемJohn Smith
все равно появится в качестве опции.
Я надеюсь это имеет смысл. Благодарю.
РЕДАКТИРОВАТЬ: Чтобы добавить немного больше разъяснений, ям, используяSearchDisplayController
метод делегата:
-(void)filterContentForSearchText:(NSString *)searchText scope:(NSString *)scope;
и я'м, используяpredicate
вот так:
newArray = [personObjectArray filteredArrayUsingPredicate:predicate];