У меня есть 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, это, конечно, прекрасно работает.