/* 手机 选择区域 模型 */ #import <Foundation/Foundation.h> NS_ASSUME_NONNULL_BEGIN @interface MYSelectAreaModel : NSObject @property (nonatomic,strong) NSString *country; /* 国家 */ @property (nonatomic,strong) NSString *areaCode; /* 区号 */ @property (nonatomic,assign) NSInteger phoneLength; /* 电话长度 */ @property (nonatomic,strong) NSString *prefix; /* 国家首字母前缀 */ @end NS_ASSUME_NONNULL_END /* 本地模糊搜索 */ - (void)sy_search:(NSString *)search{ // MYSelectAreaModel 模型 // areaArray 数据原数组 // search 搜索关键词 // predicate 模糊搜索的谓词 // resultArrM 模糊搜索出的数组 NSArray *dictArray = [MYSelectAreaModel mj_keyValuesArrayWithObjectArray:self.areaArray]; NSLog(@"%@", dictArray); if (search.length > 0) {//搜索关键词不为空 NSPredicate *predicate = [NSPredicate predicateWithFormat: @"country CONTAINS %@ || areaCode CONTAINS %@ || prefix CONTAINS %@" ,search,search,search]; NSMutableArray *itemArray = [NSMutableArray arrayWithArray:[dictArray filteredArrayUsingPredicate:predicate]]; self.resultArrM = [MYSelectAreaModel mj_objectArrayWithKeyValuesArray:itemArray]; }else {//搜索关键词为空显示全部数据 self.resultArrM = [NSMutableArray arrayWithArray:self.areaArray]; } }