Filter Array with dictionaries using NSPredicate
Please see the below example:
NSArray *array = [NSArray arrayWithObject:[NSMutableDictionary dictionaryWithObject:@"filter string" forKey:@"email"]]; // you can also do same for Name key... NSArray *filteredarray = [array filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"(email == %@)", @"filter string"]];
Check this out :
var customerNameDict = ["firstName":"karthi","LastName":"alagu","MiddleName":"prabhu"];var clientNameDict = ["firstName":"Selva","LastName":"kumar","MiddleName":"m"];var employeeNameDict = ["firstName":"karthi","LastName":"prabhu","MiddleName":"kp"];var attributeValue = "karthi";var arrNames:Array = [customerNameDict,clientNameDict,employeeNameDict];var namePredicate = NSPredicate(format: "firstName like %@",attributeValue);let filteredArray = arrNames.filter { namePredicate.evaluateWithObject($0) };println("names = ,\(filteredArray)");