|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Andrej 2:5020/400 12 Mar 2002 23:57:01 To : Artem Chuprina Subject : Hа: Hа: Hа: Сортировка русских букв -------------------------------------------------------------------------------- > A> В общем перл или W2K виноваты... база вроде как непричем. > A> Вот простой код с сортировкой; > A> "Я" специально вперед поставил, чтобы видно было, сортирует или нет > > A> @y = qw(я Я a A b B c C d D А а б Б В в г Г д Д е Е ё Ё ж Ж з З и И Й й к К > A> Л л М м н H о > A> О п П Р р С с Т т У у ф Ф Х х Ц ц ч Ч Ш ш щ Щ ъ Ъ Ы ы ь Ь э Э Ю ю); > > И в какой кодировке это в оригинале? Да, как есть > > A> print @y; # печатаем как есть > A> print '<BR>'; > A> { > A> use locale; > A> use POSIX qw (locale_h); > A> setlocale(LC_CTYPE, 'Russian_Russia.1251'); # 'ru_RU.KOI8-R' , как > A> я понимаю, без > A> разницы для виндов? > > Hеправильно понимаешь. То есть если для win98 пофигу, то это значит, то она не > умеет правильно работать с локалью либо (второе вероятнее) что ты неправильно > пишешь имя локали в обоих случаях. Я хотел сказать, и под 98 и под 2000 без разницы что ты ставишь в setlocale, ниначто не реагирует. Все пробовал, и стандартные linux типа ru_RU, и те, которые в языковых параметров 2000 указаны - 1251, 20866 и другие. Что еще в setlocale можно попробовать? Пробовал без апача, из w2k консоли, здесь вообще перекодировано, ниодин перекодировщик не берет... Совсем уже запутался... > > A> @x = sort @y; # Locale-defined sorting order > A> print '<BR>Locale-defined sorting order<BR>'; > A> print @x; > A> } > A> @x = sort @y; # ASCII sorting order again > A> print '<BR>ASCII sorting order<BR>'; > A> print @x; > > A> смотрим Locale-defined sorting order > A> Под WIN98(perl ActiveState 522) и под linux при сортирует без всяких > A> проблем > > A> Под WIN2000 русский, perl ActiveState 522 имеем: > A> ящыюДHЪХЦЙёАФУИЩГЖЗМВСТЛБПРКЕШЧОЯЬЭЮЫэшъaAbBcCdDьсрутЁхфабвгчцдежзийклмноп > > A> Это если в настройках в "Языки и стандарты, Язык(местоположение)" стоит > A> русский Если ставим английский, то > A> имеем: яЁщсцыпчрутфхюДHЪХЦЙёАФУИЩГЖЗМВСТЛБПРКЕШЧОЯЬЭЮЫшжъэмaAbBcCdDьбавлойг > A> едзник > > A> Где грабли??? Чего лечить надо? > > А без апача? > > -- > Artem Chuprina > Communiware.net > RFC2822: <ran@ran.pp.ru>, FIDO: 2:5020/358.49, ICQ: 13038757 --- ifmail v.2.15dev5 * Origin: http://www.beautiful-ladies.com/ (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/85786590e3d7.html, оценка из 5, голосов 10
|