On Sat, 11 Jun 2011 13:04:44 +0300, Ivan Petrov wrote:

Сейчас через Regexp::Common делаю так:

my @f = /$RE{balanced}{-parens=>'{}'}/g;

какой-то изврат

Не согласен.

зря.

'any symbol' --- могут быть \w \d, а также
парные сочетания скобок ()[]{} и вложенные тоже
:)

этого в исходном задании не было. ну да ладно.

any symbol --- любой символ(ы) (дословно)

тогда как-нибудь так:

    /( \{ (?>[^{}]*) (?:\}\d*|(?1) \} \d*) )/gx;

Увы,
тяп-ляп, абы как не проходит:

Sequence (?1...) not recognized in regex; marked by <-- HERE in m/( \{ (?>[^{}]*) (?:\}\d*|(?1 <-- HERE ) \} \d*) )/
--
Moscow.pm mailing list
[email protected] | http://moscow.pm.org

Ответить