2016-05-18 6 views
0

背景:文字列フィルタコアデータ配列

私はデータセットを持っていますが、それぞれには「タイプ」という属性があります。今

、私はこれらをフィルタリングする必要がありますコアデータに

data1 = {"type": ["car", "truck", "plane"]} 

、Iは


が必要Transformableとして "タイプ" を記憶: "タイプ" のように、文字列値の配列でありますあるタイプの配列に「型」にANY値が含まれているかどうかをチェックしてデータを確認します。

["pickup", "plane"] 

so、data1 in the previo私たちのセクションは資格があるはずです。


質問:

誰も私が私が欲しいものを得るために働いてNSPredicateを把握するのに役立つだろうか?

"CONTAINS"、 "SUBQUERY"を試しましたが、どれも動作しませんでした。

多くのありがとうございます!

+0

このNSPredicateカンニングシートは、以下を手助けします。https://realm.io/news/nspredicate-cheatsheet/ – iosdude

答えて

1

このような述語はありません。変換可能な値を述語の一部として使用することはできません。ただし、等価性をチェックしている場合は(おそらく)。つまり、配列があり、それを変換した場合、その正確な値を持つオブジェクトをフィルタリングできるはずです。

変換された値は、iOSアプリでNSDataのインスタンスで表される一連のバイトです。このバイトブロブは、設定されたメンバーシップ、または他のより高いレベルの意味を示すものではありません。それは単なるビットです。フィルタ配列を変換したとしても、それらのバイトのサブセクションと一致するという保証はありません。

このようなフィルタリングが必要な場合は、データの保存方法を再検討する必要があります。理想的には、Typeと呼ばれる別のエンティティがあり、タイプ名を保存し、現在のエンティティからTypeエンティティへの多対多の関係を持つことができます。

+0

ありがとうございます!非常に役立ちます – bolerovt