У меня есть предикат, который похож
[NSPredicate predicateWithFormat:@"region=%@ && locality CONTAINS %@", self.region, query];
Я хочу, чтобы это соответствовало игнорирующему регистру. Каков прием?
Оказывается, мне нужен предикат в виде:
[Предикат NSPredicateWithFormat:@"region=%@ && locality CONTAINS[cd] %@", self.region, query]
и теперь он не чувствителен к регистру
. Как описано в Predicate Programming Guide, сравнение строк в NSPredicate
можно сделать нечувствительным к регистру, включив [c]
(в квадратных скобках) после оператора сравнения (например, BEGINSWITH[c]
). Вы можете сделать диакритическую нечувствительность сравнения с помощью модификатора [d]
или регистровую и диакритическую нечувствительность с помощью модификатора [cd]
. В вашем примере вы бы использовали:
[NSPredicate predicateWithFormat:@"region=%@ && locality CONTAINS[cd] %@", self.region, query]
для регистровой и диакритической нечувствительности.