Имеем файл /tmp/test
делаем
#. cat /tmp/test
stdout: <BR>анонс<BR>
#. perl -n -e 'if (/(<BR>)(анонс)(<BR>)/) {print "$2\n";}' /tmp/test
stdout: анонс
#. perl -n -e 'if (/(<BR>)([а-я]*)(<BR>)/) {print "$2\n";}' /tmp/test
stdout:
#. perl -n -e 'if (/(<BR>)([а-я,с]*)(<BR>)/) {print "$2\n";}' /tmp/test
stdout: анонс
То есть если я задаю диапазон русских букв видом [a-я] то слово не попадает. Если добавляю еще букву "c" то слово попадает
Буквы точно все везде русские. Кто нибудь мне расталкует в чем моя беда.
perl-5.8.5-9
Demimurych добавил в 12.08.2005 14:09
В догонку
проврял в двух локаля koi и utf
один и тотже результат
perl диапазон русских букв
Модератор: Модераторы разделов
-
vadiml
- Сообщения: 446
- ОС: fc12.x86_64
Re: perl диапазон русских букв
посмотри порядок расположения букв в таблицах символов - в cp1251 у меня проблем не возникло (и в linux'е, и в win/ActivePerl)
phenom x4 905e, asus m4a79 deluxe, 4 gb, ati x550, ati 4350, 2 x 17" LCD
-
Cap. J2A
- Сообщения: 300
Re: perl диапазон русских букв
для koi8-r нужно указывать [ё-ь]
Debian GNU/Linux 3.1 2.6.12-1-k7 на AXP1700+/nF2/Radeon 9600 (debsmart)
Debian GNU/Linux 3.1 2.6.15.1 на hp compaq nx9020 (moby)
:Wq
E492: Not an editor command: Wq
Debian GNU/Linux 3.1 2.6.15.1 на hp compaq nx9020 (moby)
:Wq
E492: Not an editor command: Wq