我最近這樣做了,工作得很好。試試看。我看到我沒有[cd]
和beginswith
,但是沒有contains
。你可以試試看。
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF contains %@", textField.text];
NSArray *list = [allWords filteredArrayUsingPredicate:predicate];
for(NSString *word in list){
NSLog(@"%@",word);
}
閱讀起點文章的評論後:
首先,你應該在字符串中從文本框分裂的話:
NSArray *myWords = [textField.text componentsSeparatedByString:@" "];
然後做同樣的像你第一次會:
for(NSString *wordFromTextField in myWords){
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF contains %@", wordFromTextField];
NSArray *list = [allWords filteredArrayUsingPredicate:predicate];
for(NSString *word in list){
NSLog(@"%@",word);
}
}
Ins你可以把它們添加到一個數組當然NS的記錄單詞。
謂詞很好。什麼是實際問題? –
好吧,當我輸入時,我怎樣才能比較每個單詞?如果我輸入「我的」,它需要找到任何單詞開始的字符串或匹配「我的」,然後當我鍵入第二個單詞「名稱」它需要找到「我的」,任何單詞以「名稱」開頭,所以向前? – SMA2012
比你應該建立一些方法給你的結果。也許你可以拆分你輸入的字符串並在謂詞對象中使用它們?我會更新我的答案。 – yoeriboven