NSPredicate के साथ NSArray Not IN का उपयोग करके


90

मेरे पास एक NSArray है जिसे मैं कुछ वस्तुओं को एक NSPredicate का उपयोग करके फ़िल्टर करना चाहता हूं, मैं उम्मीद कर रहा था कि मैं 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 %@"'

अगर मैं सिर्फ उस का उपयोग करना चाहता था बिल्कुल काम करता है।

जवाबों:



हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.