So verbinden Sie zwei Zeichenfolgen für NSPredicate: Vorname und Nachname

Ich habe einPerson Objekt, das zwei hatNSString Eigenschaften;firstName and lastName. Ich verwende derzeit eineNSPredicate wie so:

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"(firstName contains[cd] %@) OR (lastName contains[cd] %@)", searchText, searchText];

Nehmen wir zum Beispiel an, ich suche nach dem Namen"John Smith". In meiner Suchleiste, wenn ich tippe"Joh", dannJohn Smith wird als Option angezeigt. Das ist gut und gut, aber wenn ich tippe"John Sm" es wird leer sein.

Wie kann ich Vor- und Nachnamen in der Liste eintragen?predicate also wenn ich suchte"John Sm" dannJohn Smith würde immer noch als Option erscheinen.

Ich hoffe das macht Sinn. Vielen Dank.

EDIT: Um ein bisschen mehr Klarheit zu schaffen, benutze ich dasSearchDisplayController Delegate-Methode:

-(void)filterContentForSearchText:(NSString *)searchText scope:(NSString *)scope;

und ich benutze diepredicate wie so:

newArray = [personObjectArray filteredArrayUsingPredicate:predicate];

Antworten auf die Frage(3)

Ihre Antwort auf die Frage