Я сдаюсь. Я перепробовал все возможные комбинации, чтобы проверить, содержит ли строка другую строку. Вот пример интуитивного синтаксиса, описывающего, что я хочу сделать:
NSPredicate* pPredicate = [NSPredicate predicateWithFormat:@"NOT (%K CONTAINS[c] %@)",
NSMetadataItemFSNameKey,
[NSString stringWithFormat:@"Some String"]];
Независимо от того, как я меняю НЕ, используйте ! вместо этого, сдвинуть скобки или вообще удалить их, я всегда получаю исключение при разборе этого выражения.
Что не так с этим выражением?
РЕДАКТИРОВАТЬ :Исключение возникает, когда я звоню
[pMetadataQuery setPredicate:pPredicate];
и исключение:*Завершение работы приложения из-за неперехваченного исключения «NSInvalidArgumentException», причина :«Неизвестный тип NSComparisonPredicate, предоставленный NSMetadataQuery (kMDItemFSName CONTAINS [c] «Some String» )'