perl -e 'my $re; $re = qr/{[^{}]*(??{$re})*[^{}]*}/; my @r =
("{a{a}}1{b{{b}}b}{{c}c}3" =~ /($re)/g); print join "\n", @r, "";'Только в Regexp::Common хитрее регулярка. 2011/6/11 Динар Жамалиев <[email protected]>: > я поковырялся в Regexp::Common, там как раз такой подход исользуется > > 11 июня 2011 г. 18:50 пользователь Ivan Petrov <[email protected]> > написал: >> >> > Я сам в раздумьях подобрать эквивалент (?1), >> > пока не соображу... >> >> я кажись вспомнил. рекурсии в регекспах старого перла можно было >> делать только явно, то есть >> >> my $regexp; >> $regexp = qr{что-то там (??{ $regexp } ) что-то дальше }; >> >> и вот уже с этим можно было работать так >> >> $str =~ /$regexp/; >> >> но на том уровне развития это тоже было извращением (как мне кажется) >> -- >> Moscow.pm mailing list >> [email protected] | http://moscow.pm.org > > > -- > Moscow.pm mailing list > [email protected] | http://moscow.pm.org > > -- Best regards, Ruslan. -- Moscow.pm mailing list [email protected] | http://moscow.pm.org
