![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
Boost.Locale: Text ConversionsBoost , ,
Text Conversions Все эти функции получают< Глобальный локальный используется во всех примерах ниже. Case HandingНапример: std::string grussen = "grüßEN";
std::cout <<"Upper "<< boost::locale::to_upper(grussen) << std::endl
<<"Lower "<< boost::locale::to_lower(grussen) << std::endl
<<"Title "<< boost::locale::to_title(grussen) << std::endl
<<"Fold "<< boost::locale::fold_case(grussen) << std::endl;
Буду печатать: Upper GRÜSSEN Lower grüßen Title Grüßen Fold grüssen Вы можете заметить, что существуют существующие функции< Например: std::wstring grussen = L"grüßen";
std::wcout << boost::algorithm::to_upper_copy(grussen) << " " << boost::locale::to_upper(grussen) << std::endl;
Выделит результат: GRÜßEN GRÜSSEN Если буква «ß» не была правильно преобразована в двойную букву S в первом случае из-за ограничения< Это еще более проблематично в случае кодировок UTF-8, когда не US-ASCII вообще не конвертируется. Например, этот код std::string grussen = "grüßen";
std::cout << boost::algorithm::to_upper_copy(grussen) << " " << boost::locale::to_upper(grussen) << std::endl;
Изменить только символы ASCII GRüßEN GRÜSSEN Unicode NormalizationНормализация Unicode — это процесс преобразования строк в стандартную форму, подходящую для обработки и сравнения текста. Например, символ «ü» может быть представлен одной кодовой точкой или комбинацией символа «u» и diaeresis «?». Нормализация является важной частью обработки текста Unicode. Unicode определяет четыре формы нормализации. Каждая конкретная форма выбирается флагом, переданнымдля нормализации.Функция:
Подробнее о формах нормализации читайте вэтой статье. Notes
Статья Boost.Locale: Text Conversions раздела может быть полезна для разработчиков на c++ и boost. Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта. :: Главная :: ::
|
||||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |