![]() |
|
Модераторы: korob2001, ginnie |
![]()
|
|
| lialimar |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 3.12.2008 Репутация: нет Всего: нет |
Имеем RHEL4 (на всякий случай)
Локаль настроена на ru_RU.UTF-8. В системе с локалью все чики-пуки. Элементарный скрипт === #!/usr/bin/perl -w use strict; use locale; use POSIX qw(locale_h); setlocale(LC_CTYPE, "ru_RU.utf8"); my $str = "Пример текста"; print uc($str), "\n"; $str =~ s/\w/R/g; print $str, "\n"; === Должен выдавать ПРИМЕР ТЕКСТА RRRRRR RRRRRR Однако фиг там. Выдает неизменную строку. Оба раза. То есть не воспринимает буквы как легальные буквы (word character). Аналогично при чтении строк из файла. Вопрос: где я не прав? (папка /usr/lib/locale/ru_RU.utf8 существует и заполнена нужными файлами LC_*) |
|||
|
||||
| Nuclon |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 27 Регистрация: 13.8.2008 Где: Днепропетровск, У краина Репутация: нет Всего: нет |
||||
|
||||
| lialimar |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 3.12.2008 Репутация: нет Всего: нет |
Спасибо. С использованием констант из текста помогло.
Теперь разбираемся с аналогичной проблемой при чтении строк из файла, который изначально в utf8. ... С utf8 файлом работает и так, если указать -CD в параметрах запуска. Но ругается: "Wide character in print at ./testfile.pl line 11, <LINES> line 2." Я с ним полностью согласен. Но ругаться-то зачем? Это сообщение отредактировал(а) lialimar - 3.12.2008, 11:13 |
|||
|
||||
| Nuclon |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 27 Регистрация: 13.8.2008 Где: Днепропетровск, У краина Репутация: нет Всего: нет |
должно помочь |
|||
|
||||
| kavkaz |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 70 Регистрация: 26.12.2007 Репутация: 1 Всего: 2 |
тут конечно не очень привычно читать, но ВСЕ что надо - есть, жаль что пришлось съесть все эти "собаки" прежде чем наткнулся на эту ссылку
http://taka.xfo.cc/utf8.xul |
|||
|
||||
| ginnie |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1287 Регистрация: 6.1.2008 Где: Москва Репутация: 38 Всего: 49 |
Другой, более удобный, чем презентация выше, вариант статьи Владимира Перепелицы "UTF Perl Practice, или как использовать UTF-8 в перле".
-------------------- Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг) |
|||
|
||||
![]()
|
| Правила форума "Perl" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Perl: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |