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


ru.perl

 
 - RU.PERL ----------------------------------------------------------------------
 From : Artem Chuprina                       2:5020/400     21 Nov 2002  20:50:20
 To : "Serg"
 Subject : Re: Проблемы с логикой регулярных выражений
 -------------------------------------------------------------------------------- 
 
 Здравствуй, Serg.
 
  S>>>> $txt=~s/(abra\d)(?:abra\d)*myexp//g;
  S>>> Сорри, конечно же не (?:), а (?!). Глючить уже с этими регэкспами начал:)
  S>>> Тогда конечно регэксп выглядит так:
  S>>> $txt=~s/(abra\d)(?!abra\d)*myexp//g;
  S>>> Hо тем не менее он всеравно не работает:(.
 
  AC>> Если так для каждого myexp, то я вот так вот сходу и не сделаю... Тебе
  AC>> его надо узнать или выкусить из строки вместе с myexp и всем, что между
  AC>> ними? Если myexp в строке гарантированно один, то (для выкусывания)
 
 S> Hадо выкусить. Причем выкусить abra\d. В чем прикол? Между abra\d и myexp не
 S> должно встречаться другого abra\d (даже с другим \d).
 
  AC>> $txt=~s/(abra\d)(?!.*abra\d.*myexp).*myexp//;
 S> Впринципе работает... Hо не совсем догоняю - зачем во вторых скобках нужен
 S> myexp?
 
 Затем, что иначе на твоем примере оно увидит abra\d за myexp и look-ahead
 скажет "фигу".
 
 S> И почему это не должно работать с /g (Хотя вроде работает).
 
 Hе с /g, а более чем с одним myexp в строке.
 
  AC>> Во всяком случае на твоем примере работает. Очевидно, что в случае, если
  AC>> myexp'ов в строке может быть больше, придется сильно усложнять регекс - в
  AC>> negative look-ahead'е придется проверять на отсутствие myexp.
 S> Вот казалось бы не сложная для человека операция...:) 
 
 Сложная. Сколько я тебе вопросов задал? Это все, что ты недоформулировал.
 Попробуй все сформулировать полностью. У тебя это займет явно больше места,
 чем то, что я потом по этой формулировке напишу. Hа порядок.
 
 S> Блин, так просто вопрос в догонку - уже не по логике. Всю жизнь в перле
 S> выдергивал подстроку методом замены (ставил s/ и потом брал из $1). Мона
 S> устроить, что б она просто выдергивала подстроки в какой-нить массив???
 
 В перле есть еще метод поиска. Без замены.
 
 -- 
 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)
 
 

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

 Тема:    Автор:    Дата:  
 Проблемы с логикой регулярных выражений   Serg   18 Nov 2002 23:25:35 
 Проблемы с логикой регулярных выражений   Serg   18 Nov 2002 23:33:42 
 Re: Проблемы с логикой регулярных выражений   Vladimir Podgorny   19 Nov 2002 11:40:18 
 Re: Проблемы с логикой регулярных выражений   Artem Chuprina   19 Nov 2002 16:51:15 
 Re: Проблемы с логикой регулярных выражений   Serg   21 Nov 2002 20:41:07 
 Re: Проблемы с логикой регулярных выражений   Artem Chuprina   21 Nov 2002 20:50:20 
 Проблемы с логикой регулярных выражений   Andrew Sagulin   19 Nov 2002 11:41:26 
 Re: Проблемы с логикой регулярных выражений   Artem Chuprina   19 Nov 2002 16:33:46 
 Проблемы с логикой регулярных выражений   Oleg N. Kotenko   19 Nov 2002 18:20:50 
 Проблемы с логикой регулярных выражений   Alexey Sheynuk   20 Nov 2002 10:26:49 
 Re: Проблемы с логикой регулярных выражений   vilfred   24 Nov 2002 02:23:36 
 Проблемы с логикой регулярных выражений   Andrew Sagulin   24 Nov 2002 02:54:08 
 Re: Проблемы с логикой регулярных выражений   vilfred   25 Nov 2002 13:34:12 
 Проблемы с логикой регулярных выражений   Andrew Sagulin   25 Nov 2002 20:01:54 
 Re: Проблемы с логикой регулярных выражений   vilfred   29 Nov 2002 02:16:00 
 Re: Проблемы с логикой регулярных выражений   Eugene Bodin   29 Nov 2002 11:06:52 
 Проблемы с логикой регулярных выражений   Kostya Altuhov   29 Nov 2002 10:54:42 
 Re: Проблемы с логикой регулярных выражений   vilfred   02 Dec 2002 16:19:29 
 Проблемы с логикой регулярных выражений   Kostya Altuhov   05 Dec 2002 22:36:33 
Архивное /ru.perl/1445438b7fb04.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional