Re[2]: регулярные выражения и $1
От: slava_phirsov Россия  
Дата: 07.06.10 12:34
Оценка:
Здравствуйте, anonymous, Вы писали:

...

Тогда каким макаром можно провернуть такую штуку: модифицировать строку до тех пор, пока не совпадет, а после совпадения взять нужный фрагмент, захваченный "()" в $1 ? Прямолинейное решение:


my $match;
until (($bar =~ $re) and (($match = $1), 1))
{
    $bar .= foo();
}


Но как-то не очень элегантно, ИМХО.

P.S. выражение (($match = $1), 1) нужно потому, что $match может быть, ну скажем, '0', в результате операция присваивания вернет '0', и until не закончится.
Люди! Люди, смотрите, я сошел с ума! Люди! Возлюбите друг друга! (вы чувствуете, какой бред?)
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.