Objective-C Language
NSPredicate
खोज…
वाक्य - विन्यास
CONTAINS ऑपरेटर: यह मिलान वाले सबसेट के साथ वस्तुओं को फ़िल्टर करने की अनुमति देता है।
NSPredicate *filterByName = [NSPredicate predicateWithFormat:@"self.title CONTAINS[cd] %@",@"Tom"];
LIKE: इसका सरल तुलना फिल्टर है।
NSPredicate *filterByNameCIS = [NSPredicate predicateWithFormat:@"self.title LIKE[cd] %@",@"Tom and Jerry"];
= ऑपरेटर: यह सभी ऑब्जेक्ट्स को फ़िल्टर मूल्य से मेल खाता है।
NSPredicate *filterByNameCS = [NSPredicate predicateWithFormat:@"self.title = %@",@"Tom and Jerry"];
IN ऑपरेटर: यह आपको विशिष्ट फ़िल्टर सेट के साथ ऑब्जेक्ट फ़िल्टर करने की अनुमति देता है।
NSPredicate *filterByIds = [NSPredicate predicateWithFormat:@"self.id IN %@",@[@"7CDF6D22-8D36-49C2-84FE-E31EECCECB79", @"7CDF6D22-8D36-49C2-84FE-E31EECCECB76"]];
नहीं ऑपरेटर: यह आपको विशिष्ट सेट के साथ उलटा वस्तुओं को खोजने की अनुमति देता है।
NSPredicate *filterByNotInIds = [NSPredicate predicateWithFormat:@"NOT (self.id IN %@)",@[@"7CDF6D22-8D36-49C2-84FE-E31EECCECB79", @"7CDF6D22-8D36-49C2-84FE-E31EECCECB76"]];
टिप्पणियों
अधिक जानकारी के लिए Apple प्रलेखन में NSPredicate पढ़ें
नाम से फ़िल्टर करें
NSArray *array = @[
@{
@"id": @"7CDF6D22-8D36-49C2-84FE-E31EECCECB71",
@"title": @"Jackie Chan Strike Movie",
@"url": @"http://abc.com/playback.m3u8",
@"thumbnailURL": @"http://abc.com/thumbnail.png",
@"isMovie" : @1
},
@{
@"id": @"7CDF6D22-8D36-49C2-84FE-E31EECCECB72",
@"title": @"Sherlock homes",
@"url": @"http://abc.com/playback.m3u8",
@"thumbnailURL": @"http://abc.com/thumbnail.png",
@"isMovie" : @0
},
@{
@"id": @"7CDF6D22-8D36-49C2-84FE-E31EECCECB73",
@"title": @"Titanic",
@"url": @"http://abc.com/playback.m3u8",
@"thumbnailURL": @"http://abc.com/thumbnail.png",
@"isMovie" : @1
},
@{
@"id": @"7CDF6D22-8D36-49C2-84FE-E31EECCECB74",
@"title": @"Star Wars",
@"url": @"http://abc.com/playback.m3u8",
@"thumbnailURL": @"http://abc.com/thumbnail.png",
@"isMovie" : @1
},
@{
@"id": @"7CDF6D22-8D36-49C2-84FE-E31EECCECB75",
@"title": @"Pokemon",
@"url": @"http://abc.com/playback.m3u8",
@"thumbnailURL": @"http://abc.com/thumbnail.png",
@"isMovie" : @0
},
@{
@"id": @"7CDF6D22-8D36-49C2-84FE-E31EECCECB76",
@"title": @"Avatar",
@"url": @"http://abc.com/playback.m3u8",
@"thumbnailURL": @"http://abc.com/thumbnail.png",
@"isMovie" : @1
},
@{
@"id": @"7CDF6D22-8D36-49C2-84FE-E31EECCECB77",
@"title": @"Popey",
@"url": @"http://abc.com/playback.m3u8",
@"thumbnailURL": @"http://abc.com/thumbnail.png",
@"isMovie" : @1
},
@{
@"id": @"7CDF6D22-8D36-49C2-84FE-E31EECCECB78",
@"title": @"Tom and Jerry",
@"url": @"http://abc.com/playback.m3u8",
@"thumbnailURL": @"http://abc.com/thumbnail.png",
@"isMovie" : @1
},
@{
@"id": @"7CDF6D22-8D36-49C2-84FE-E31EECCECB79",
@"title": @"The wolf",
@"url": @"http://abc.com/playback.m3u8",
@"thumbnailURL": @"http://abc.com/thumbnail.png",
@"isMovie" : @1
}
];
// *** Case Insensitive comparision with excate title match ***
NSPredicate *filterByNameCIS = [NSPredicate predicateWithFormat:@"self.title LIKE[cd] %@",@"Tom and Jerry"];
NSLog(@"Filter By Name(CIS) : %@",[array filteredArrayUsingPredicate:filterByNameCIS]);
दिए गए आईडी को छोड़कर फिल्में खोजें
// *** Find movies except given ids ***
NSPredicate *filterByNotInIds = [NSPredicate predicateWithFormat:@"NOT (self.id IN %@)",@[@"7CDF6D22-8D36-49C2-84FE-E31EECCECB79", @"7CDF6D22-8D36-49C2-84FE-E31EECCECB76"]];
NSLog(@"Filter movies except given Ids : %@",[array filteredArrayUsingPredicate:filterByNotInIds]);
उन सभी ऑब्जेक्ट्स को खोजें जो टाइप मूवी के हैं
// *** Find all the objects which is of type movie, Both the syntax are valid ***
NSPredicate *filterByMovieType = [NSPredicate predicateWithFormat:@"self.isMovie = %@",@1];
// OR
//NSPredicate *filterByMovieType = [NSPredicate predicateWithFormat:@"self.isMovie = %@",[NSNumber numberWithBool:YES]];
NSLog(@"Filter By Movie Type : %@",[array filteredArrayUsingPredicate:filterByMovieType]);
सरणी की विशिष्ट वस्तु आईडी का पता लगाएं
// *** Find Distinct object ids of array ***
NSLog(@"Distinct id : %@",[array valueForKeyPath:@"@distinctUnionOfObjects.id"]);
विशिष्ट आईडी वाली फ़िल्में खोजें
// *** Find movies with specific ids ***
NSPredicate *filterByIds = [NSPredicate predicateWithFormat:@"self.id IN %@",@[@"7CDF6D22-8D36-49C2-84FE-E31EECCECB79", @"7CDF6D22-8D36-49C2-84FE-E31EECCECB76"]];
NSLog(@"Filter By Ids : %@",[array filteredArrayUsingPredicate:filterByIds]);
केस टाइटल मैच के साथ असंवेदनशील तुलना
// *** Case Insensitive comparison with exact title match ***
NSPredicate *filterByNameCIS = [NSPredicate predicateWithFormat:@"self.title LIKE[cd] %@",@"Tom and Jerry"];
NSLog(@"Filter By Name(CIS) : %@",[array filteredArrayUsingPredicate:filterByNameCIS]);
सटीक शीर्षक मैच के साथ मामला संवेदनशील
// *** Case sensitive with exact title match ***
NSPredicate *filterByNameCS = [NSPredicate predicateWithFormat:@"self.title = %@",@"Tom and Jerry"];
NSLog(@"Filter By Name(CS) : %@",[array filteredArrayUsingPredicate:filterByNameCS]);
मैचिंग सबसेट के साथ केस असंवेदनशील तुलना
// *** Case Insensitive comparison with matching subset ***
NSPredicate *filterByName = [NSPredicate predicateWithFormat:@"self.title CONTAINS[cd] %@",@"Tom"];
NSLog(@"Filter By Containing Name : %@",[array filteredArrayUsingPredicate:filterByName]);