Questions tagged «nspredicate»

8
NSPredicate:按NSDate属性的天筛选对象
我有一个带有NSDate属性的Core Data模型。我想按天筛选数据库。我认为解决方案将涉及NSPredicate,但我不确定如何将它们放在一起。 我知道如何NSDate使用NSDateComponents和比较两个星期几NSCalendar,但是如何用和过滤呢NSPredicate? 也许我需要在NSManagedObject子类上创建一个类别,该类别可以返回仅包含年,月和日的空日期。然后我可以在一个NSPredicate。这是您的建议,还是更简单?

6
使用NSPredicate根据NSDictionary键过滤NSArray
我有很多字典。 我想根据一个键过滤数组。 我尝试了这个: NSPredicate *predicate = [NSPredicate predicateWithFormat:@"(SPORT == %@)", @"Football"]; NSArray *filteredArray = [data filteredArrayUsingPredicate:predicate]; 这行不通,我没有结果。我想我做错了。我知道如果“ SPORT”是ivar,这就是方法。我认为如果是密钥,可能会有所不同。 我还没有找到一个例子。 谢谢 更新资料 我在要搜索的字符串周围加了引号。 NSPredicate *predicate = [NSPredicate predicateWithFormat:@"(SPORT == '%@')", @"Football"]; 它仍然不起作用。 更新2 解决了。实际上,我不得不删除单引号,这似乎与指南中所说的背道而驰。 我真正的问题是我有一个嵌套数组,而我实际上并没有评估字典。骨头移动。

2
使用NOT IN的NSArray与NSPredicate
我有一个NSArray,我想使用NSPredicate过滤掉某些对象,我希望可以使用NOT IN,因为我看到自己可以轻松地进行IN。 所以我有我的数组: self.categoriesList 然后我得到要删除的值: NSArray *parentIDs = [self.cateoriesList valueForKeyPath:@"@distinctUnionOfObjects.ParentCategoryID"]; 这为我提供了我不想显示的类别的ParentCategoryID列表,因此我认为可以使用NSPredicate删除它们: self.cateoriesList = [self.cateoriesList filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"CategoryID NOT IN %@",parentIDs]]; 这将失败: reason: 'Unable to parse the format string "CategoryID NOT IN %@"' 如果我只想使用IN,那当然是完美的。


4
NSPredicate测试NULL和空白字符串
我有一个NSArray,需要过滤掉所有为null或具有''(空字符串)的字符串。我怎么做?我试着做: NSPredicate *predicateName = [NSPredicate predicateWithFormat:@"(name!=nil)"]; 但这似乎不起作用。也许确实如此,但是有不同类型的null ...
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.