我有一个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 %@"'
如果我想使用just IN,那当然很好用。
发布于 2011-12-21 03:18:02
那NOT (CategoryID IN %@)
呢?
发布于 2011-12-21 03:21:46
使用NONE
怎么样?
[NSPredicate predicateWithFormat:@"NONE CategoryID IN %@", parentIDs];
https://stackoverflow.com/questions/8580715
复制相似问题