ios – 通过NSString过滤字典数组

ios – 通过NSString过滤字典数组,第1张

概述在实现搜索功能时,我需要过滤字典数组.我正在使用自动完整的文本字段方法搜索栏并将其存储到字符串中.我能够解析数组,但面对下面的json [{"CertProfID":"4","Name":"Dodge","Location":"loc4","City":"city4","State":"state4","Zip":"zip5","Website":"http:\/\/cnn.com","Phone 在实现搜索功能时,我需要过滤字典数组.我正在使用自动完整的文本字段方法搜索栏并将其存储到字符串中.我能够解析数组,但面对下面的Json

[{"CertProfID":"4","name":"Dodge","Location":"loc4","City":"city4","State":"state4","Zip":"zip5","Website":"http:\/\/cnn.com","Phone":"phone4","Email":"email4"},{"CertProfID":"5","name":"cat","Location":"loc5","City":"city5","State":"State5","Website":"web5","Phone":"phone5","Email":"email5"}]

在这里,我需要过滤字典以使其完成

我尝试使用下面的代码但其返回的数组具有空值:(

Nsstring *substring = [Nsstring stringWithString:textFIEld.text];  NSLog(@"substring %@",substring);  NSMutableArray *arr2Filt= [arrayList valueForKey:@"name"];  nspredicate *predicate = [nspredicate predicateWithFormat:@"SELF  contains[c] %@",substring];  filteredarr = [NSMutableArray arrayWithArray:[arr2Filt filteredArrayUsingPredicate:predicate]];
解决方法 此代码将解决您的问题,它将返回一个字典数组

Nsstring *substring = [Nsstring stringWithString:textFIEld.text];nspredicate *predicate = [nspredicate predicateWithFormat:@"name contains[c] %@",searchString];NSArray *filteredArry=[[arrayOfDict filteredArrayUsingPredicate:predicate] copy];

arrayOfDict is your original array of dictionarIEs

Swift 3.0版:::

var namePredicate = nspredicate(format: "name contains[c] %@",searchString);let filteredArray = arrayOfDict.filter { namePredicate.evaluate(with: ) };print("names =,\(filteredArray)")

希望它会对你有所帮助

总结

以上是内存溢出为你收集整理的ios – 通过NSString过滤字典数组全部内容,希望文章能够帮你解决ios – 通过NSString过滤字典数组所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1006182.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-22
下一篇2022-05-22

发表评论

登录后才能评论

评论列表(0条)

    保存