顯示廣告
隱藏 ✕
看板 Knuckles_note
作者 Knuckles (站長 那克斯)
標題 [Xcode] 使用 NSPredicate 過濾資料
時間 2014年09月17日 Wed. AM 01:13:37


例如 boardList 是一個 NSArray
裡面存了很多個 NSDictionary *board
board 裡有存 bi、name、title 三個index

想要將 board[@"name"] 含有 searchText 的 board 找出來
存成 boardSearchResult 的話,可以用

    //先建立過濾規則 predicate
    NSPredicate *predicate = [NSPredicate predicateWithFormat:@"name contains[c] %@", searchText];
    //使用 predicate 執行 NSArray 的 - filteredArrayUsingPredicate:
    NSArray boardSearchResult = [boardList filteredArrayUsingPredicate:predicate];


其中 @"name contains[c] %@"

[c]代表忽略大小寫

要字串完全相同可以用 @"name == %@"

以某個字串開頭  @"name beginswith[c] %@"
以某個字串結束  @"name endswith[c] %@"



參考:


 


--
※ 作者: Knuckles 時間: 2014-09-17 01:13:37
※ 編輯: Knuckles 時間: 2014-09-26 23:19:08
※ 看板: KnucklesNote 文章推薦值: 0 目前人氣: 0 累積人氣: 399 
r)回覆 e)編輯 d)刪除 M)收藏 ^x)轉錄 同主題: =)首篇 [)上篇 ])下篇