Verwenden von NSPredicate, um festzustellen, ob eine Zeichenfolge einer anderen Zeichenfolge entspricht
Ich habe eine NSArray
von CalEvents kehrte mit der [CalCalendarStore eventPredicateWithStartDate]
Methode. Von den Ereignissen zurück, ich bin versucht zu halten, nur diejenigen, in denen der Titel der Veranstaltung == @"on call"
(case-insensitive).
Ich bin in der Lage zu halten, in der array-solche Ereignisse, deren Titel umfasst @"on call"
mit dem folgenden code (wo 'events' ist ein 'NSArray' aufgefüllt mit CalEvents
):
NSPredicate *onCallPredicate = [NSPredicate predicateWithFormat:@"(SELF.title CONTAINS[c] 'on call')"];
[events filteredArrayUsingPredicate:onCallPredicate];
Ich habe versucht, mit einem Prädikat format-string wie:
@"SELF.title == 'on call'"
aber das scheint nicht zu funktionieren.
Gibt es ein einfacher Weg, dies zu tun?
InformationsquelleAutor der Frage Garry | 2010-06-03
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen
[NSPredicate predicateWithFormat:@"title ==[c] 'on call'"];
(Die
[c]
macht der Geschlechter-Vergleich der groß-und Kleinschreibung.)InformationsquelleAutor der Antwort Cory Kilger
Versuchen Prädikat mit format
@"self.title like[c] 'on call'"
. Der folgende Beispiel-code-Ausgänge 2 Streicher:InformationsquelleAutor der Antwort Vladimir