2013-05-21 1 views

ответ

2

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

tmpString = [[[NSString alloc] initWithData:[realString dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES] encoding:NSASCIIStringEncoding] autorelease]; 
+0

Не преобразование в ASCII преобразование с потерями и обратно излишеством способа удалить диакритические? Разве это не удалит гораздо больше символов, чем нужно? – rmaddy

+1

@rmaddy: ему не нужно его возвращать, OP просто нуждается в согласовании. Это можно сделать на преобразованной строке. – Jack

+0

Извините, я думаю, я был не очень ясен. Вы отвечаете на преобразование исходной строки в строку ASCII с преобразованием с потерями. Я хотел сказать, что это преобразование может быть слишком низким. Любые нелатинские буквы будут потеряны при конвертации. Мы не знаем, что RE использует OP, но есть способы получить новую строку, которая избавится от диакритики без почти такой же потенциальной потери, как ваш предложенный подход. BTW - мой комментарий о «конверсии и обратном» относится к вашему ответу перехода от строки к данным и обратно в строку. – rmaddy

 Смежные вопросы

  • Нет связанных вопросов^_^