【发布时间】:2013-03-23 04:01:44
【问题描述】:
我有一组自定义对象。自定义对象如下所示
@interface User : NSObject
@property(nonatomic, strong)NSString *user_Id;
@property(nonatomic, strong)NSString *user_Name;
@property(nonatomic, strong)NSString *user_UserName;
@end
我必须过滤检查 2 个属性的数组。也就是说,如果我搜索 a,那么它应该从包含 a 的数组中过滤出的用户列表,其中包含 user_Name 或 user_Id 。我怎样才能做到这一点?对于我知道的单个属性[user_Name]
NSString *predicateString = @"user_Name MATCHES[c] %@";
NSString *matchString = [NSString stringWithFormat: @".*%@.*",searchText];
NSPredicate *predicate =[NSPredicate predicateWithFormat:predicateString, matchString];
self.searchResults = [userArray filteredArrayUsingPredicate:predicate];
【问题讨论】:
-
使用其中两个并合并结果怎么样?
-
true.but如何合并结果而不重复?
-
因为 user_Id 很常见,遍历其中一个,如果 user_id 不在数组中,则添加它。
-
我刚刚找到了一个直接的解决方案.. 发布它。
-
哎呀我没找到..无论如何我得到了我想要的东西谢谢大家:)
标签: iphone ios search uisearchbar nspredicate