URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 4829
[ Назад ]

Исходное сообщение
"Сортировка массива с русскими строчками"

Отправлено XPurple , 08-Ноя-05 12:48 
Попытался отсортировать в алфавитном порядке массив с русскими строчками c помощью команды sort.
Команда print $_ for sort @massiv; выдала отсортированные строчки вперемежку с неотсортированными строчками, начинающиеся на русские B,Ж,Ф и т.д.
С английскими строчками все ОКЕЙ.
Отчего такое может быть и возможно это как-то исправить ?
perl 5.6.1
os RedHat7.3
при использовании use locale почему-то не срабатывает на cgi-скрипте.

Содержание

Сообщения в этом обсуждении
"Сортировка массива с русскими строчками"
Отправлено XPurple , 08-Ноя-05 14:50 
Поправка:
при использовании use locale при непосредственном запуске из консоли script.cgi выводит русские записи в правильном порядке; при запуске из браузера - начинается путаница.

"Сортировка массива с русскими строчками"
Отправлено exec , 08-Ноя-05 22:19 
>Поправка:
>при использовании use locale при непосредственном запуске из консоли script.cgi выводит русские
>записи в правильном порядке; при запуске из браузера - начинается путаница.
>


Лучше работать в кодировке win-1251, тогда будет всё верно отсортировано. В таблице koi-8r порядок русских букв не алфавитный.


"Сортировка массива с русскими строчками"
Отправлено Andrey , 09-Ноя-05 09:17 
У cp1251 коды для кириллицы ни разу не в алфавитном порядке.



"Сортировка массива с русскими строчками"
Отправлено Andrey , 09-Ноя-05 09:13 
print $ENV{q/LANG/} что говорит?

"Сортировка массива с русскими строчками"
Отправлено madskull , 09-Ноя-05 09:42 
В соседнем форуме уже решили эту проблему
http://www.opennet.me/openforum/vsluhforumID8/3704.html

"Сортировка массива с русскими строчками"
Отправлено XPurple , 09-Ноя-05 14:07 
>В соседнем форуме уже решили эту проблему
>http://www.opennet.me/openforum/vsluhforumID8/3704.html
Извините что не известил, действительно решил проблему.
Спасибо за участие.