Библиотека Unicode Light C
Я ищу небольшую библиотеку C для обработки строк utf8.
В частности, расщепление основано на разделителях юникода для использования с алгоритмами стемминга.
Похожие посты предложили:
ICU http://www.icu-project.org/ (мне показалось слишком громоздким для моих целей на встроенных устройствах)
UTF8-CPP: http://utfcpp.sourceforge.net/ (Отлично, но C++ не C)
Кто-нибудь нашел какие-либо независимые от платформы небольшие библиотеки кодовой базы для обработки строк в Юникоде (не нужно делать натурализацию).
3 ответа
Хорошая, легкая библиотека, которую я успешно использую - это utf8proc.
UTF-8 специально разработан таким образом, что многие байтовые функции продолжают работать или требуют лишь незначительных изменений.
C о strstr
Функция, например, будет работать идеально, пока оба ее ввода являются допустимыми, заканчивающимися нулем строки UTF-8. strcpy
работает нормально, пока его входная строка начинается с границы символа (например, возвращаемое значение strstr
).
Так что вам может даже не понадобиться отдельная библиотека!