繁体   English   中英

将NSPredicate应用于字典IOS中的Array

[英]Apply NSPredicate to Array which is inside an a dictionary IOS

@interface Contact : NSObject

@property (assign, nonatomic) NSInteger *cid;
@property (strong, nonatomic) NSString * name;
@property (strong, nonatomic) NSMutableArray *arrPhone;

@end

我为上面的字典创建了“Contact”NSObject,它有arrPhone数组。

现在我有一个包含联系对象列表的数组。 现在我需要那些电话号码包含以@“11”(我的搜索字符串)开头的号码的联系对象

我尝试过以下方法:

NSPredicate *p1 =[NSPredicate predicateWithFormat:@"arrPhone contains[cd] %@)",searchText];

但它不起作用。 请帮忙。

由于arrPhone本身就是一个数组,因此您需要测试其成员是否符合您的搜索条件,而不是它是否符合您的搜索条件。 因此修改谓词以使用ANY

NSPredicate *p1 =[NSPredicate predicateWithFormat:@"ANY arrPhone contains[cd] %@)",searchText];

尝试这个

[collection[@"phone"] filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"SELF beginswith[c] '11'"]];

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM