我試圖找到裏面NSDictionary
內myAr
匹配的str
標準的tags
,我想有only
那些確切的陣列不多也不少,結果正確篩選的NSArray。在這個例子中,我只想要myAr
的第二個NSDictionary
。如何使用NSPredicate
雖然試圖通過使用謂詞來實現這一點,但是當我使用數組時總是返回空。
我想過濾使用數組,但這是行不通的。我想知道是否有人能告訴我我做錯了什麼,我怎麼能實現我的目標。在此先感謝
NSArray * myAr = @[ @{ @"tags": @[@"one",@"two",@"three"],
@"number": @"4"
},
@{ @"tags": @[@"one",@"two"],
@"number":@"4"
},
@{ @"tags": @[@"one",@"two",@"four"],
@"number":@"4"
},
@{ @"tags": @[@"chacho",@"chocho"],
@"number":@"4"
},
@{ @"tags": @[@"one"],
@"number":@"4"
} ];
NSArray* str = @[@"one",@"two"];
NSPredicate* pre = [NSPredicate predicateWithFormat:@"tags CONTAINS %@ ",str];
myAr = [myAr filteredArrayUsingPredicate:pre];
NSLog(@"%@",myAr);
以塊爲基礎的選手更方便,與他們你不會在同一siruation。 – holex
我不太明白爲什麼這個問題如此嚴重低估。喬納森已經(幾乎)清楚地描述了他想要的內容,並提供了一些完整的獨立示例代碼。 - 我不明白爲什麼一些答案是downvoted ... –
請不要[刪除並立即轉貼](http://stackoverflow.com/questions/18067919/how-to-filter-content-in-nsarray - 使用謂詞)。改爲編輯原件。 –