Re[3]: Регулярные выражения
От: MBy  
Дата: 01.08.06 09:55
Оценка:
Здравствуйте, alexxx50, Вы писали:

MBy>>А нужно взять именно такой блок или текст в нём?


A>нужно что бы на выходе было так:

A>$1 = IF
A>$2 = PROGNOCATEGORY
A>$3 = %CATEGORYS% gdfgcvmnbvgf
A>$4 = ENDIF

На для именно такого блока вот такой код работает:

#!perl

$_ = '%IF% %PROGNOCATEGORY% %CATEGORYS% sometext... %ENDIF%';

m/%([^%]+)% \s*
  %([^%]+)% \s*
  (%[^%]+% .*) \s*
  %([^%]+)%
 /x;

print "$1\n$2\n$3\n$4";
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.