ios - NSPredicate 获取包含特定键值的数组

标签 ios objective-c nspredicate

使用item-"apple"获取数组的所有元素

我的意见

item_list: [
    {
        CurrentDate = “4/2/2016";
        search_item =(             
            item_name = @“apple”;
        );
    },
    {
        CurrentDate = “27/1/2016";
        search_item =(
            item_name = @“Ball”;   
        );
    },
    {
        CurrentDate = “17/2/2016";
        search_item =(
            item_name = @“Cat”; 
        );
    },
    {
        CurrentDate = “6/2/2016";
        search_item =(
            item_name = @“apple”;
        );
    },
]

我需要的输出

item_list: [
    {
        CurrentDate = “4/2/2016";
        search_item =(             
            item_name = @“apple”;
        );
    },
    {
        CurrentDate = “6/2/2016";
        search_item =(
            item_name = @“apple”;
        );
    },
]

我尝试但无法运行的代码

NSArray*  filtered = [[item_list valueForKey:@"search_item"] filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"(item_name == %@)", @“apple”]];

最佳答案

NSPredicate *predicate =
[NSPredicate predicateWithFormat:@"ANY search_item.item_name CONTAINS[c] %@", @"apple"];  
NSArray *array =[item_list filteredArrayUsingPredicate:predicate];

关于ios - NSPredicate 获取包含特定键值的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38610299/

相关文章:

ios - 如何使选项卡栏单击显示两个 View Controller 之一,具体取决于用户是否登录?

ios - PHFetchResult自定义排序:按日期排序的项目,最早的照片在前

ios - 使用 NSPredicate 过滤 NSArray 的 Big-O 运行时

ios - 如何在 Swift 中为 PHFetchOptions 格式化 NSPredicate?

objective-c - 如果填充了 UISearchBar,则更改 UITableView setBackgroundColor

iOS-在 subview 中绘制贝塞尔曲线路径

ios - Spritekit 节点在移动时会抖动……为什么?

objective-c - UIPanGestureRecognizer 与 UISwipeGestureRecognizer 重叠

iphone - 即使图像较小,如何使 UITableViewCell 的 ImageView 成为固定大小

ios - 从字符串中删除第一个数字