/* 手機 選擇區域 模型 */ #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]; } }