NSPredicate специальных символов - iPhone

Я пытаюсь сделать предикат, который включает специальные символы

Например:

[[myIngredients filteredSetUsingPredicate:[NSPredicate predicateWithFormat:@"name BEGINSWITH[c] %@", [alphabet objectAtIndex:idx]]];

Здесь я получу весь компонент, который запускается с (позвольте, говорят для idx = 5), 'e'. Поскольку я должен сделать свое приложение на английском и французском языке, некоторые компоненты запускаются со специального символа как 'é' или даже 'œ' для 'o'. Как я могу включать эти специальные символы в свой предикат?

С наилучшими пожеланиями

6
задан ncohen 19 March 2010 в 03:17
поделиться

1 ответ

Думаю, вы ищете флаг «нечувствительность к диакритическим знакам», который поддерживает NSPredicate. Он похож на флаг «c», который вы уже используете, за исключением того, что вы используете «d». Примерно так:

… predicateWithFormat:@"name BEGINSWITH[cd] %@", …

Теперь строка «e» также будет соответствовать «é», «ê», «ë» и так далее.

10
ответ дан 10 December 2019 в 00:36
поделиться