【发布时间】:2014-04-14 04:43:10
【问题描述】:
我有一个名为 charactersAndDescriptions 的数组,其中包含多个数组,每个数组中都有一个 NSDictionary,其中包含两个键/值。它看起来像这样:
我需要根据键“desc”的值过滤此数组,将其与字符串变量 searchText 进行比较(并且它应该返回该字符串存在于 desc 中任何位置的结果)。我希望返回的结构与原始结构相同 - 数组在数组中包含字典。这是我的代码:
NSPredicate *resultPredicate = [NSPredicate predicateWithFormat:@"desc contains[c] %@", searchText];
self.resultsArray = [self.charactersAndDescriptions filteredArrayUsingPredicate:resultPredicate];
问题是,self.resultsArray 总是返回 0 个对象。我不明白为什么会这样。我在这里查看问题,他们只有一个字典数组,但找不到嵌套数组。希望您能帮忙,谢谢!
【问题讨论】:
-
你必须做一个深度搜索,因为它是一个多级数组
-
我希望返回的结构与原始结构相同 - 仍然是数组中字典的数组。如何进行深度搜索?
标签: ios objective-c nsarray nsdictionary nspredicate