Главная страница


ru.perl

 
 - RU.PERL ----------------------------------------------------------------------
 From : Serg Ivanov                          2:5020/400     06 Sep 2004  08:25:18
 To : All
 Subject : Почему неправильно работает RE?
 -------------------------------------------------------------------------------- 
 
 Hi All,
 
  Этот вопрос я уже задавал (и не только здесь), но ответа никто не дал.
   Почему из-за 8-битного символа, стоящего после .+? неправильно работает RE?
 Дома в ActiveState Perl все работает правильно, а на американском сервере
 неправильно (и не только у меня). Интересно, как у кого на сервере это будет
 работать?
 
 Вот пример:
 $_='Результат поиска: найдено сайтов';
 if (m!^Результат поиска.+?сайтов!m) - не находит.
 А замена "с" на \xF1 не помогает:
 if (m!^Результат поиска.+?\xF1айтов!m) - не находит.
 Если разделить пробелом, то уже находит:
 if (m!^Результат поиска.+? сайтов!m)
 Вот еще работающий вариант разделителя (прямо анекдот):
 if (m!^Результат поиска.+?\s{0}сайтов[^<]+<b>(\d+)</b>!m)
 
  Выставление локали на это не влияет.
 
 --- ifmail v.2.15dev5.3
  * Origin: FidoNet Online - http://www.fido-online.com (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Почему неправильно работает RE?   Serg Ivanov   06 Sep 2004 08:25:18 
 Re: Почему неправильно работает RE?   Artem Chuprina   06 Sep 2004 10:01:11 
Архивное /ru.perl/16679cba7cdd1.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional