Автор Тема: uc в винде  (Прочитано 5185 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн /IE][A

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 36
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
uc в винде
« : 02 Декабря 2003, 11:30:10 »
Привет !!!

Столкнулся с проблемой перевода букв в верхний регистр под виндой.

При выводе на экран (через консоль) все пишется нормально, при применении регекспов и функций работы со строками, строки остаются без изменений.

Регулярные выражения тоже работают не совсем нормально, т.е. если текст набран маленькими буквами, тогда разбирается, если присутствуют большие не обрабатывается, хотя обработка идет бещ учета регистра.

Текст набирается в 866 кидоровке.

При применениях locale вообще лажа получается.
Пробовал всякие комбинации локали (Russian, Russian.CP1251, Russian.koi8r).

Оффлайн ondr

  • Модератор
  • Глобальный модератор
  • Старожил
  • *****
  • Сообщений: 440
  • +0/-0
  • 0
    • Просмотр профиля
uc Б БХМДЕ (CP866)
« Ответ #1 : 02 Декабря 2003, 11:49:52 »
Цитировать
Пробовал всякие комбинации локали

Пробуй еще. Читай маны. Ты на верном пути.
0 OK, 0:1

Оффлайн /IE][A

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 36
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
uc Б БХМДЕ (CP866)
« Ответ #2 : 02 Декабря 2003, 12:03:04 »
Может подскажешь какие именно читать :) ?

Оффлайн ondr

  • Модератор
  • Глобальный модератор
  • Старожил
  • *****
  • Сообщений: 440
  • +0/-0
  • 0
    • Просмотр профиля
uc Б БХМДЕ (CP866)
« Ответ #3 : 02 Декабря 2003, 12:12:09 »
Ну собственно perldoc perllocale
А также загляни сюда http://forums.webscript.ru/showthread.php?s=&postid=93559
Плюс поиск далее по форуму.
0 OK, 0:1

Оффлайн /IE][A

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 36
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
uc Б БХМДЕ (CP866)
« Ответ #4 : 02 Декабря 2003, 12:17:50 »
при изменении локали (использовал разные), результат один и тот-же.

Оффлайн ondr

  • Модератор
  • Глобальный модератор
  • Старожил
  • *****
  • Сообщений: 440
  • +0/-0
  • 0
    • Просмотр профиля
uc Б БХМДЕ (CP866)
« Ответ #5 : 02 Декабря 2003, 12:29:58 »
Попробуй
print setlocale(LC_CTYPE, \'rus_RUS\');
Что напишет?
0 OK, 0:1

Оффлайн /IE][A

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 36
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
uc Б БХМДЕ (CP866)
« Ответ #6 : 02 Декабря 2003, 12:36:12 »
Пишет Russian_Russia.CP1251.

Оффлайн /IE][A

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 36
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
uc Б БХМДЕ (CP866)
« Ответ #7 : 02 Декабря 2003, 12:37:58 »
меняю на кои (Russian.koi8r), все равно пишет 1251.

Оффлайн AliMamed

  • \\o/ ali akbar \\o/
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2409
  • +2/-0
  • 2
    • Просмотр профиля
    • http://alimamed.pp.ru
uc Б БХМДЕ (CP866)
« Ответ #8 : 02 Декабря 2003, 12:47:55 »
Цитировать
/IE][A:
меняю на кои (Russian.koi8r),

значит она не установлена (по крайней мере под этим именем)
только я не понял зачем, если текст в кодировке 866, устанавливать koi8r или win1251
ну, будем исповедоваться?

Оффлайн ondr

  • Модератор
  • Глобальный модератор
  • Старожил
  • *****
  • Сообщений: 440
  • +0/-0
  • 0
    • Просмотр профиля
uc Б БХМДЕ (CP866)
« Ответ #9 : 02 Декабря 2003, 12:49:04 »
/IE][A
Эээ... А, что же тебя не устраивает?
0 OK, 0:1

Оффлайн /IE][A

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 36
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
uc Б БХМДЕ (CP866)
« Ответ #10 : 02 Декабря 2003, 12:49:47 »
ДЛя пробы, проверить работает вообще или нет.
Тогда как 866 именуется (CP866 или еще как-то.), просто с 866 кодировкой не случалось работать
« Последнее редактирование: 02 Декабря 2003, 14:55:17 от /IE][A »

Оффлайн /IE][A

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 36
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
uc Б БХМДЕ (CP866)
« Ответ #11 : 03 Декабря 2003, 08:09:24 »
Специально для тех кто столкнется с этой проблемой в Винде.

Цитировать

use locale;
use POSIX qw(locale_h);

BEGIN {
   setlocale(LC_ALL, "Russian_Russia.866");
}

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28