NSPredicateで2つのコンポーネントを比較する

ブレインフォーク

NSDictionary使用して連絡先のクエリを実行したいNSPredicate「firstName」と「lastName」を別々に使用して連絡先を検索できますが、完全な名前が入力されている連絡先も検索する必要があります。

例:「JohnDoe」という名前の連絡先を検索し、検索キー「John」または「Doe」を入力して検索すると、名前を取得できますが、検索キー「JohnDoe」を入力します。現在私は使用しています:

NSPredicate *p1 = [NSPredicate predicateWithFormat:@"lastNames BEGINSWITH[cd] %@", searchText];
NSArray *p1FilteredArray = [allContacts filteredArrayUsingPredicate:p1];
NSPredicate *p2 = [NSPredicate predicateWithFormat:@"firstNames BEGINSWITH[cd] %@", searchText];
NSArray *p2FilteredArray = [allContacts filteredArrayUsingPredicate:p2];
searchedArray = [[p1FilteredArray arrayByAddingObjectsFromArray:p2FilteredArray] mutableCopy];
ホレックス

私は例えばこのようなことをします:

NSArray *_allContacts = // ...;
NSString *_searchText = // ...;
NSArray *_result = [_allContacts filteredArrayUsingPredicate:[NSPredicate predicateWithBlock:^BOOL(NSDictionary * evaluatedObject, NSDictionary *bindings) {
    return ([[[evaluatedObject valueForKey:@"lastNames"] lowercaseString] hasPrefix:[_searchText lowercaseString]] || [[[evaluatedObject valueForKey:@"firstNames"] lowercaseString] hasPrefix:[_searchText lowercaseString]]);
}]];

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Sonarで2つのスナップショットのコンポーネントを比較する方法は?

分類Dev

2つのコンポーネントの比較-コンポーネントXはコンポーネントAのインスタンスです

分類Dev

2つのコンポーネントで2つの別々のトースターを表示する方法

分類Dev

比較でトリプルのコンポーネントを無視する

分類Dev

React-別々のコンポーネント間で小道具を比較する方法

分類Dev

同じコンポーネントを使用する2つのコンポーネント

分類Dev

1つのコンポーネントで複数のコンポーネントを実行する

分類Dev

角度2:Promiseでコンポーネントの「this」を操作する

分類Dev

2つの異なるフレーバー間でDagger2コンポーネントを共有する

分類Dev

ReactNativeの2つのコンポーネント間でデータを渡す

分類Dev

Angular2-2つの異なるモジュールでコンポーネントを宣言する

分類Dev

2つのコンポーネントを条件付きでレンダリングする方法は?

分類Dev

スマートコンポーネント内で2つの引数を使用するメソッドを使用して、スマート/ダムコンポーネントのコンポーネントをリファクタリングする

分類Dev

ember.js-異なるルートで2つのコンポーネントを接続する方法は?

分類Dev

最初のコンポーネントが前に実行されるときに、2つのコンポーネント間で値を共有します

分類Dev

同じコンポーネントで2つの異なるアレイをマッピングする

分類Dev

2つのコンポーネント間でajaxの結果を、2番目のコンポーネントを使用して最初のコンポーネントと共有するにはどうすればよいですか?

分類Dev

Reactコンポーネントを作成する2つの異なる方法

分類Dev

コンポーネントでyieldを使用するのはいつですか?

分類Dev

サービスを使用して2つのコンポーネント間でデータを同期する方法

分類Dev

VueJSで2つのサードパーティコンポーネントをマージする方法

分類Dev

インターネット上で2つのフォルダを比較する

分類Dev

Reactで2つのコンポーネントを切り替える

分類Dev

2つのコンポーネントを使用して検索でフィルタリングする方法[reactjs]

分類Dev

uipickerviewで2つのコンポーネントを同時にスピンする方法

分類Dev

2つのコンポーネント間で値を渡す方法は?

分類Dev

2つのコンポーネントをファミリに定義するものは何ですか?

分類Dev

2つのRDDを複数の値コンポーネントで結合し、結果を平坦化する

分類Dev

ES6Reactコンポーネントを定義する2つの方法

Related 関連記事

  1. 1

    Sonarで2つのスナップショットのコンポーネントを比較する方法は?

  2. 2

    2つのコンポーネントの比較-コンポーネントXはコンポーネントAのインスタンスです

  3. 3

    2つのコンポーネントで2つの別々のトースターを表示する方法

  4. 4

    比較でトリプルのコンポーネントを無視する

  5. 5

    React-別々のコンポーネント間で小道具を比較する方法

  6. 6

    同じコンポーネントを使用する2つのコンポーネント

  7. 7

    1つのコンポーネントで複数のコンポーネントを実行する

  8. 8

    角度2:Promiseでコンポーネントの「this」を操作する

  9. 9

    2つの異なるフレーバー間でDagger2コンポーネントを共有する

  10. 10

    ReactNativeの2つのコンポーネント間でデータを渡す

  11. 11

    Angular2-2つの異なるモジュールでコンポーネントを宣言する

  12. 12

    2つのコンポーネントを条件付きでレンダリングする方法は?

  13. 13

    スマートコンポーネント内で2つの引数を使用するメソッドを使用して、スマート/ダムコンポーネントのコンポーネントをリファクタリングする

  14. 14

    ember.js-異なるルートで2つのコンポーネントを接続する方法は?

  15. 15

    最初のコンポーネントが前に実行されるときに、2つのコンポーネント間で値を共有します

  16. 16

    同じコンポーネントで2つの異なるアレイをマッピングする

  17. 17

    2つのコンポーネント間でajaxの結果を、2番目のコンポーネントを使用して最初のコンポーネントと共有するにはどうすればよいですか?

  18. 18

    Reactコンポーネントを作成する2つの異なる方法

  19. 19

    コンポーネントでyieldを使用するのはいつですか?

  20. 20

    サービスを使用して2つのコンポーネント間でデータを同期する方法

  21. 21

    VueJSで2つのサードパーティコンポーネントをマージする方法

  22. 22

    インターネット上で2つのフォルダを比較する

  23. 23

    Reactで2つのコンポーネントを切り替える

  24. 24

    2つのコンポーネントを使用して検索でフィルタリングする方法[reactjs]

  25. 25

    uipickerviewで2つのコンポーネントを同時にスピンする方法

  26. 26

    2つのコンポーネント間で値を渡す方法は?

  27. 27

    2つのコンポーネントをファミリに定義するものは何ですか?

  28. 28

    2つのRDDを複数の値コンポーネントで結合し、結果を平坦化する

  29. 29

    ES6Reactコンポーネントを定義する2つの方法

ホットタグ

アーカイブ