これは重複している必要があります。しかし、NSPredicateの質問が非常に多いため、適切な質問を見つけることができません。
フィールドを含むコアデータオブジェクトのリストがありcompositeName
ます。「エミリーブラント」のような名前がそこにある可能性があります。NSPredicate
「Em」だけでなく「Bl」も検索できるを使用してリストを検索し、フェッチされた結果にこの名前が表示されるようにします。
これは非常に簡単なはずですが、ご想像のとおり、私にはわかりません。正規表現を使用したNSPredicateでの機能不全の試みは、次のようになります。
[NSPredicate predicateWithFormat:@"compositeName MATCHES[cd] '.*(?<=^|\\s)%@.*'", query];
この正規表現に対する私の考えは次のとおりです。
- 前の任意の数の文字
- ネガティブルックビハインドスペースまたは始まり
- クエリ
- 後の任意の数の文字
しかし、それは機能していません。結果が得られません。これを修正するにはどうすればよいですか?
PS私の目的にも合う正規表現のないNSPredicateソリューションがある場合。