iOS中的搜索正常情况下用NSPredicate都足以解决问题,比如我们有一个原数组_dataArraty:
NSPredicate*predicate =[NSPredicate predicateWithFormat:@"name like %@", searchTexts];
NSArray * resultArr = [_dataArray filteredArrayUsingPredicate:predicate];
like语法可以匹配搜索
一般情况下,搜索是否包含某个字符串,用
NSPredicate*predicate =[NSPredicate predicateWithFormat:@"SELF contains[cd] %@", searchTexts];
NSArray * resultArr = [_dataArray filteredArrayUsingPredicate:predicate];
现在来点更实用的,一个原数组里面装得是一些字典,想搜索字典里面的某个key(比如name)所对应的value的值,可以这样:
NSPredicate * result = [NSPredicate predicateWithFormat:@"name contains[cd] %@", searchText];
NSArray * searchResults = [self.dataArray filteredArrayUsingPredicate:result];
so easy!
原文地址:http://blog.csdn.net/xgb742951920/article/details/46455827