Модераторы: korob2001, ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> не работает lc 
:(
    Опции темы
garmon4ik
Дата 28.11.2007, 01:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 31.7.2007

Репутация: нет
Всего: нет



Здравствуйте. Перечитал много сообщений на вашем форуме, переделал все , что советовали, но ничего не помогло/
Проблема:
вот  такой код
Код

#!/usr/bin/perl -w
use strict;
use warnings;
use utf8;
use locale;
use POSIX qw(locale_h);
setlocale(LC_ALL, "ru_RU.utf8");

print header (-type => 'text/html; charset=utf-8');

my $b=param('par');
my $s=lc($b);
print "$s";

не изменяет символы Кириллицы в верхнем регистре на символы в нижнем, ЧТО делать?

Хочу заметить, что вот такой код выдает правильный результат
Код

#!/usr/bin/perl -w
use strict;
use warnings;
use utf8;
use locale;
use POSIX qw(locale_h);
setlocale(LC_ALL, "ru_RU.utf8");

print header (-type => 'text/html; charset=utf-8');

my $b='ХОРОШО';
my $s=lc($b);
print "$s";
 т е изменяет регистр на нижний.

Это сообщение отредактировал(а) garmon4ik - 28.11.2007, 11:45
PM MAIL   Вверх
amg
Дата 28.11.2007, 12:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1145
Регистрация: 3.8.2006
Где: Новосибирск

Репутация: 1
Всего: 50



Добавь код
Код

print map {"$_ ".ord($_)."<BR>"} split //, $b;
чтобы посмотреть, действительно ли в юникоде поступают данные
PM MAIL   Вверх
garmon4ik
Дата 28.11.2007, 16:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 31.7.2007

Репутация: нет
Всего: нет



результат 
Код

print map {"$_ ".ord($_)."<BR>"} split //, $b;
следующий

� 208
� 180
� 208
� 184
� 208
� 188
� 208
� 176

Что это означает? 

СпасибоИ вообще что нужно учесть, чтобы использовать функции работы со строками для Кириллицы

Это сообщение отредактировал(а) garmon4ik - 28.11.2007, 18:22
PM MAIL   Вверх
GoodBoy
Дата 29.11.2007, 18:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Главный джедай
****


Профиль
Группа: Модератор
Сообщений: 3886
Регистрация: 8.1.2003
Где: КМВ

Репутация: 4
Всего: 83



Сделай на сервере вызов: locale -a и посмотри какие локали у тебя установлены. У меня, к примеру, локаль называется: "ru_RU.UTF-8". И потом пропиши в скрипте:
Код
use locale;
use POSIX qw (locale_h);
setlocale(LC_CTYPE, 'ru_RU.UTF-8');
setlocale(LC_ALL, 'ru_RU.UTF-8');

должно заработать, если данные действительно в Юникоде.


--------------------
Чем дальше в лес, тем толще партизаны...

Цитата(igorold @  1.5.2016,  17:40 Найти цитируемый пост)
Индейцы не обратили внимания на поток беженцев из Европы… Теперь они живут в резервациях. 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl: CGI программирование"
korob2001
sharq
  • В этом разделе обсуждаются вопросы относящиеся только к CGI программированию
  • Если ваш вопрос не относится к системному или CGI программированию, задавайте его в общем разделе
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", качать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: разработка для Web | Следующая тема »


 




[ Время генерации скрипта: 0.0420 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.