NSPredicate нечувствительное к регистру соответствие на - многие отношения

Если специализированная шаблонная функция не будет также перечислена в заголовочном файле, другое приложение будет не знать о специализированной версии. Решением является добавление SomeFunc<int>() к заголовку также.

65
задан Brian Webster 13 October 2009 в 21:08
поделиться

3 ответа

Если я правильно вас понял, вы хотите, чтобы ваш предикат был истинным, когда любое имя ключевого слова совпадает со строкой поиска. Для этого вам нужно протестировать с ключевым словом ANY, например:

[NSPredicate predicateWithFormat:@"ANY keywords.name CONTAINS[c] %@", ...];

Это будет искать ключевые слова и вернуть истину, если какое-либо из этих ключевых слов name содержит вашу строку поиска.

88
ответ дан 24 November 2019 в 15:18
поделиться

Я считаю, что ответ таков:

[NSPredicate predicateWithFormat:@"keywords.name CONTAINS[cd] %@", self.searchString];

Сравнение строк по умолчанию чувствительно к регистру и диакритике. Вы можете изменить оператор, используя ключевые символы c и d в квадратных скобках, чтобы указать нечувствительность к регистру и диакритике соответственно, например firstName BEGINSWITH [cd] $ FIRST_NAME.

Синтаксис строки формата предиката

49
ответ дан 24 November 2019 в 15:18
поделиться

Если вы пытаетесь поймать только равные имена, но с нечувствительным регистром, я думаю, что это лучшее решение.

[NSPredicate predicateWithFormat:@"ANY keywords.name LIKE[c] %@", ...];

Вы мне очень помогли. Спасибо ребята!!!

В моем случае я сделал:

[NSPredicate predicateWithFormat:@"ANY name LIKE[c] %@", @"teste"];
13
ответ дан 24 November 2019 в 15:18
поделиться