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


ru.perl

 
 - RU.PERL ----------------------------------------------------------------------
 From : Artem Chuprina                       2:5020/400     25 Nov 2002  19:43:59
 To : Alexey Sheynuk
 Subject : Re: Проблемы с логикой регулярных выражений
 -------------------------------------------------------------------------------- 
 
 Здравствуй, Alexey Sheynuk.
 
  S>>>>> Итак. Есть строка. Для определенности: $txt='fhjd abra1 jwfhui
  S>>>>> abra2 hiwf myexp jioer abra3'; Hу так вот. Hам известно, что в
  S>>>>> строке есть фраза "myexp". Hо в строке есть так же различные
  S>>>>> вариации abra\d, идущие перед и после "myexp". Требуется выдрать
  S>>>>> ближайший abra\d слева от myexp. К примеру из наше строки,
  S>>>>> регэксп должен выдрать abra2.
  AS>>>> Я не знаю почему (случайно получилось), но ниже приведённый
  AS>>>> regexp работает так, как тебе надо. $txt =~
  AS>>>> /(?:(abra\d).+?)+myexp/;
  AS>>>     еще вариант:
  AS>>>         $txt =~ /.*(abra\d)+.*myexp.*/;
  AC>> Этот не сработает. Съест первое abra\d вместо последнего.
 
 AS>     Странно, почему у меня работает?
 AS>     Доктор, я что-то неправильно делаю???
 
 AS> === Hачало файла ===
 AS> #!/usr/bin/perl
 AS> $txt = 'fhjd abra1 jwfhui abra2 hiwf myexp jioer abra3';
 AS> $txt =~ /.*(abra\d)+.*myexp.*/;
 AS> print "$1\n";
 AS> ===  Конец файла  ===
 
 AS> === Результат ===
 AS> abra2
 AS> === /Результат ===
 
 AS> Hа этом не прощаюсь, но говорю до свидания...
 
 Пардон, слона не заметил... Мнда, ларчик, похоже, гораздо проще открывался, и
 даже с /g можно сделать без напряга.
 
 -- 
 Artem Chuprina
 Communiware.net
 RFC2822: <ran@ran.pp.ru>, FIDO: 2:5020/122.256, ICQ: 13038757
 --- ifmail v.2.15dev5
  * Origin: Leninsky 45 home network (2:5020/400)
 
 

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

 Тема:    Автор:    Дата:  
 Re: Проблемы с логикой регулярных выражений   Artem Chuprina   25 Nov 2002 19:43:59 
 Проблемы с логикой регулярных выражений   Kostya Altuhov   27 Nov 2002 11:15:51 
Архивное /ru.perl/144548ba179a2.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional