[Comm] [JT] а работает ли мастеровский перл, регулярные выражения, с русскими буквами?

Andrei M. Laptev =?iso-8859-1?q?aml_=CE=C1_softex=2Eru?=
Чт Окт 24 09:20:29 MSD 2002


On Wed, 23 Oct 2002 19:37:43 +0400
Sergey Degtyaryov <maga на replay.ru> wrote:

> > пытаюсь искать строку, но ищет только если точно совпадает, а
> > такая вещь как игнорирование регистра не проходит.
> 
> use locale;
> 
А я вот тоже недавно столкнулся с похожей проблемой, что нужно как то перлу объяснить что он работает с русскими буквами.
вот краткий пример:
----------------8<-------------------------
$perl -e 'while (<>){print "--->$_" if /[а-я]/}'
а
--->а
б
--->б
в
г
--->г
д
--->д
е
--->е
ё
ж
з
и
--->и
й
--->й
----------------8<-------------------------
То есть буквы в,ё,ж,з ну и там еще несколько не попадают под регулярное выражение [а-я], хотя с англиским аналогом [a-z] проблем нет.
Попытки писать use locale или setlocale(LC_ALL,'ru_RU.KOI8-R') у меня эффекта не дали.

Для себя решил проблему просто перечислив все русские буквы в квадратных скобках.

-- 
С уважением,
Лаптев Андрей



Подробная информация о списке рассылки community