<meta http-equiv="content-type" content="text/html; charset=utf-8"><span class="Apple-style-span" style="border-collapse: collapse; font-family: arial, sans-serif; font-size: 13px; "><div>тогда добавим еще условие (?<!\{) и иолучится так</div>
<div>      ...</div><div><div>        (</div><div>         (?: (?<!\{) \{.+?\}\d*(?=\{) ) (?{ push @chanks, $2 if $2; })</div><div>        )+</div></div><div>     ...</div></span><div><div class="gmail_quote">11 июня 2011 г. 14:10 пользователь Aleksander Gorohovski <span dir="ltr"><<a href="mailto:angel@feht.dgtu.donetsk.ua">angel@feht.dgtu.donetsk.ua</a>></span> написал:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div><div></div><div class="h5">On Sat, 11 Jun 2011 12:36:27 +0300, Динар Жамалиев wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Простите, не учел возможность присутствия цифр после скобок, вот так кажется<br>
работает:<br>
<br>
    my @chanks;<br>
    my $str = "{bla1 {bl}a2} }123".<br>
            "{bla3 {b{la4} }123".<br>
            "{{bla5 {bla6} }bla7}".<br>
            "{{bla8 {bla9} }bla10}123";<br>
<br>
    $str =~ /^<br>
        ((?: \{.+?\}\d* )(?=\{))<br>
<br>
        (<br>
         (?: \{.+?\}\d*(?=\{) ) (?{ push @chanks, $2 if $2; })<br>
        )+<br>
<br>
        (\{.+?\}\d*\z)<br>
    /x;<br>
<br>
    print join "\n", $1, @chanks, $2 , $3;<br>
</blockquote>
<br></div></div>
Премного благодарен.<br>
<br>
В первоначальном варианте я путался понять зачем нужен был выбор<br>
push @chanks, $2 if $2; |  push @chanks, $2;<br>
а теперь стало ясно, что не нужен.<br>
<br>
Оч.классно получается.<br>
Хотя не учитывается возможный вариант, например,<br>
если в последнем фрагменте (или другом) будет:<br>
        ...<br>
        {{bla8 {bla9} }{bla10}}123<br>
<br>
то получится вывод из 2-х элементов<br>
...<br>
{{bla8{bla9}}<br>
{bla10}}123<br>
<br>
а должен 1:<br>
...<br>
{{bla8{bla9}}{bla10}}123<div><div></div><div class="h5"><br>
-- <br>
Moscow.pm mailing list<br>
<a href="mailto:moscow-pm@pm.org" target="_blank">moscow-pm@pm.org</a> | <a href="http://moscow.pm.org" target="_blank">http://moscow.pm.org</a><br>
</div></div></blockquote></div><br></div>