NSPredicate, чтобы проверить, соответствует ли какое-либо слово в строковом атрибуте поисковому запросу в Swift - PullRequest
0 голосов
/ 24 января 2019

Я хочу найти строковый атрибут в Базовых данных для поискового запроса, используя NSPredicate. Строковый атрибут может быть одним словом или несколькими, например, Ulysses или The Red Badge of Courage.

Я мог бы использовать contains, как показано ниже:

NSPredicate *pred= [NSPredicate predicateWithFormat:@"title contains[cd] %@",str];

Однако для защиты от совпадения для поискового термина rage, например, против The Red Badge Of Courage было бы безопаснее искать совпадения в начале слова.

Существует ли способ изменения, начинающийся с, чтобы вы могли применить его к любому слову в строке, а не только ко всей строке, то есть к некоторому варианту:

NSPredicate *pred = [NSPredicate predicateWithFormat:@"title beginswith[cd] %@", str];

Вы также можете выполнить поиск, если значение атрибута соответствует какому-либо слову в поисковом запросе:

NSPredicate *pred = [NSPredicate predicateWithFormat: @"SELF IN %@", str]

По сути, я хочу сделать обратное, проверить, соответствует ли строка поиска какому-либо слову в атрибуте в основных данных.

Спасибо за любые предложения

...