可能重复:
Searching/Filtering a custom class array with a NSPredicateNSPredicate数组包含问题
我有一个包含自定义类的对象数组,我想如果一个基于阵列筛选类属性包含一个自定义字符串。我有一个方法传递了我想要搜索的属性(列)和它将搜索的字符串(searchString)。这里是我的代码有:
NSPredicate *query = [NSPredicate predicateWithFormat:@"%@ contains %@", column, searchString];
NSMutableArray *temp = [displayProviders mutableCopy];
[displayProviders release];
displayProviders = [[temp filteredArrayUsingPredicate:query] mutableCopy];
[temp release];
出于某种原因,这总是返回一个空数组。四列中的三列是整数或双精度,所以如果需要,我可以添加一个if语句将searchString转换为数字。但是,即使搜索属性是字符串,并且应该有一些包含字符串searchString的行,也会返回一个空数组。
我是否使用“contains”不正确?