nixp.ru v3.0

27 мая 2017,
суббота,
11:14:15 MSK

DevOps с компанией «Флант»
Maks написал 7 июля 2006 года в 13:22 (438 просмотров) Ведет себя неопределенно; открыл 3 темы в форуме, оставил 1 комментарий на сайте.

Кто нибудь решил задачу по преобразованию строк в кодировке UTF-8 в верхний и нижний регистр. Как это сделать, м.б. есть готовые решения ? Поделитесь плз.

Feuerbach

man 7 locale

man 3 setlocale

man 3 toupper

sas

Маленькое уточнение: мне кажется, что towupper вернее :)

Feuerbach

Да, видимо, вернее, но тоже не верно :) Вон что пишут в towupper(3):

This function is not very appropriate for dealing with Unicode characters, because Uni-

code knows about three cases: upper, lower and title case.

sas

Насколько я помню — titlecase — это «составные» буковки (composite).

Они традиционно рассматриваются отдельно, часто в зависимости от контекста.

Это должно учитываться прикладной программй.

Насколько я помню, в стандартную библиотеку функции для titlecase не входят.

Kstati i vopros bil ob upper/lower case :))

Кроме того в вопросе есть ошибка. UTF8 — метод кодировки Unicode.

А в Unicode стандарте много говорится о контексте. Мне трудно поверить,

что кто нибудь, когда нибудь, сможет создать библиотеку учитывающую все

возможные контексты. Так что прикладным программам всегда найдется что

делать :)

Мы $0.02