Нечувствительные к регистру Базовые Данные СОДЕРЖАТ или ограничение BEGINSWITH

У меня есть предикат, который похож

[NSPredicate predicateWithFormat:@"region=%@ && locality CONTAINS %@", self.region, query];

Я хочу, чтобы это соответствовало игнорирующему регистру. Каков прием?

42
задан aussiegeek 10 January 2010 в 04:37
поделиться

2 ответа

Оказывается, мне нужен предикат в виде:

[Предикат NSPredicateWithFormat:@"region=%@ && locality CONTAINS[cd] %@", self.region, query]

и теперь он не чувствителен к регистру

.
10
ответ дан 26 November 2019 в 23:31
поделиться

Как описано в Predicate Programming Guide, сравнение строк в NSPredicate можно сделать нечувствительным к регистру, включив [c] (в квадратных скобках) после оператора сравнения (например, BEGINSWITH[c]). Вы можете сделать диакритическую нечувствительность сравнения с помощью модификатора [d] или регистровую и диакритическую нечувствительность с помощью модификатора [cd]. В вашем примере вы бы использовали:

[NSPredicate predicateWithFormat:@"region=%@ && locality CONTAINS[cd] %@", self.region, query]

для регистровой и диакритической нечувствительности.

92
ответ дан 26 November 2019 в 23:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: