Каков стандартный алгоритм преобразования символов Юникода в нижний регистр? - PullRequest
7 голосов
/ 19 августа 2010

Я хочу знать стандартный алгоритм преобразования символов Юникода в нижний регистр, предложенный unicode.org .

Кроме того, большинство языков программирования следуют этому предлагаемому стандарту?

Ответы [ 3 ]

4 голосов
/ 20 августа 2010

Я хочу знать стандартный алгоритм преобразования символов Юникода в нижний регистр, предложенный unicode.org.

Основной алгоритм - просто объединить строчные буквы каждого отдельного символа (какопределяется предпоследним столбцом в UnicodeData.txt ).Есть также некоторые специальные правила для обработки многосимвольных отображений (İ → i̇ с дополнительной КОМБИНИРУЮЩЕЙ Точкой над i), условные отображения (Σ → ς в конце слова, но σ в противном случае)и чувствительные к языку правила (например, турецкий без точек).

Кроме того, большинство языков программирования следуют этому предлагаемому стандарту?

Java выполняет.Python реализует основные правила, но не специальные правила.А у C вообще нет стандартизированной поддержки Unicode.

2 голосов
/ 19 августа 2010

.NET поддерживает Unicode и предлагает встроенные функции для переключения между прописными и строчными буквами.Это, вероятно, верно и для некоторых других языков.

1 голос
/ 19 августа 2010

Языки программирования различаются в зависимости от того, насколько хорошо они поддерживают Unicode. Большинство из них не имеют символов Юникода как встроенный тип. Обычно он обрабатывается либо в библиотеке, либо с помощью вызовов ОС.

Например, C ++ не имеет собственного типа символов Unicode, но имеет поддержку локали в stl (которая определена как часть языка). У Ada есть собственный тип Wide_Character, а также поддержка библиотеки для управления им.

...