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

Исходное сообщение
"Perl. Замена прописных букв на ЗАГЛАНЫЕ"

Отправлено kydesnik , 26-Июн-09 14:05 
Все мы знаем как это делается
$string =~ s/[A-Z]/[a-z]/

подскажите ламеру как это сделать с кириллицей
НЕПРАВИЛЬНО!!! $string =~ s/[А-Я]/[а-я]/

как правильно:-(

p.s. про локаль знаю (use locale), про нее можете не писать.


Пример:
#!/usr/bin/perl -w

use strict;
use locale;
use CGI qw(:standard);
use CGI::Carp qw(fatalsToBrowser);

print header (-type => 'text/html',-charset=>'Windows-1251',-expires=>'+3d'),
    start_html (-bgcolor => "white");

my $myWord1 = 'WORD';
my $myWord2 = 'МИР';

print "Word1 - ",lc($myWord1),"\n
";
print "Word2 - ",lc($myWord2),"\n";

print end_html ();


Видем на экране:
Word1 - word
Word2 - МИР


Содержание

Сообщения в этом обсуждении
"Perl. Замена прописных букв на ЗАГЛАНЫЕ"
Отправлено Sarge , 26-Июн-09 15:15 
либо локаль отсутствует в системе, либо файл (слово) не в системной локали написано.

"Perl. Замена прописных букв на ЗАГЛАНЫЕ"
Отправлено angra , 26-Июн-09 16:34 
В последнем случае поможет setlocale. И вообще, топикстартер, неужто так сложно прочитать хотя бы первые две странички man perllocale.