nsdictionaryの配列(nsstringではなく)のケースと異なる非感受性フィルターを実行する方法は?
-
18-09-2019 - |
質問
辞書の配列があります。各辞書の @"name"フィールドに特定の文字列が含まれているかどうかを確認して、その配列をフィルタリングしたいと思います。
キャッチは、私が自分のフィルタリングをケースとディクリティックに鈍感にしたいということです。
配列に文字列のみが含まれていた場合、nspredicateを簡単に使用できます。しかし、それはそうではなく、私はnspredicateがこの状況に伴う方法を見ていません。
ケース非感受性のみを気にかけた場合、すべてのアイテムをループして、低いフィルター文字列をより低い名前と比較することができます。しかし、私はディークリティクスの同様のトリックを知りません。
これに良い解決策はありますか?
解決
この質問の一番の答えを確認してください。
そのコードを使用してディアチティックスを取り除き、その後、鈍感な比較または検索を行うことができるはずです。
他のヒント
どんなものはどうですか:
NSArray * array = .....
NSString * searchString = @"foo";
NSArray * filteredArray = [array filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"name contains[cd] %@", searchString]];
所属していません StackOverflow