kubou.dev();

好きな言葉は一石二鳥

NSDictionaryの配列からNSPredicateで検索するには。

NSDictionaryの配列からNSPredicateで検索するには。

ちなみに普通に文字列の配列だった場合は、以下のように書く。

NSArray *myArray = @[@"value1", @"value2", @"value3"];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF contains[c] %@", searchText];
self.dataSourceSearchResults = [myArray filteredArrayUsingPredicate:predicate];

配列の中身がDictionaryだった場合はこう書く。

NSDictionary *myDic1 = @{@"key1":@"value1", @"key2":@"value2"};
NSDictionary *myDic2 = @{@"key1":@"value3", @"key2":@"value4"};

NSMutableArray *myArray = [NSMutableArray array];
[myArray addObject:myDic1];
[myArray addObject:myDic2];

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"key1 contains[c] %@", searchText];
self.dataSourceSearchResults = [myArray filteredArrayUsingPredicate:predicate];