搜索 NSDictionary 的 NSArray。如何使用 NSPredicate 查找?

Search NSArray of NSDictionary. How to find using NSPredicate?

我有一个NSArray。每个索引中有一个或多个 NSDictionary。根据搜索输入,我想检查它是否包含 contact_detail 字典中的 contact_Label 中的值。它看起来像这样:

(
  {
     "contact_detail" =     {
          "contact_is_in_phone" = 1;
          "contact_Label" = "Tyler Globussoft";
          "contact_displayname" = "Suzan Arohh";
     },
     "last_msg_details" =     {
           .....
     };
  },
  {
  }
);

我已经累成这样了。但是没有得到结果。

NSArray *contacts = self.dataArray; //your array of NSDictionary objects
NSPredicate *filter = [NSPredicate predicateWithFormat:@"contact_Label = %@",stringValue];
NSArray *filteredContacts = [contacts filteredArrayUsingPredicate:filter];

您可以使用

NSArray *contacts = self.dataArray; //your array of NSDictionary objects
NSPredicate *filter = [NSPredicate predicateWithFormat:@"contact_detail.contact_Label = %@",stringValue];
NSArray *filteredContacts = [contacts filteredArrayUsingPredicate:filter];

编码愉快...