Мне кажется, что идеально в вашем случае - составить грамматику и
сгенерировать по ней парсер.

Что-нибудь типа
http://search.cpan.org/dist/Parse-RecDescent/lib/Parse/RecDescent.pm

11 июня 2011 г. 10:39 пользователь Aleksander Gorohovski <
[email protected]> написал:

> Уважаемое сообщество,
> Доброго времени суток!
>
> Посоветуйте,
> как лучше (эффективнее) разобрать строку вида:
>
> $_ = '{any symbol}{any symbol}1{any symbol}2...';
>
> на фрагменты
> {any symbol}
> {any symbol}1
> {any symbol}2
> ...
>
> Сейчас через Regexp::Common делаю так:
>
> my @f = /$RE{balanced}{-parens=>'{}'}/g;
>
> но получаю только
> {any symbol}
> {any symbol}
> {any symbol}
> ...
>
> и не знаю можно ли как то указать, что
> закрывающаяся фигурная скобка может идти с \d*
> Пробовал
> /$RE{balanced}{-parens=>"{}\d*"}/g;
> но это не работает
> :(
>
> Спасибо.
>
> p.s.
> С наступающим праздником.
> --
> Moscow.pm mailing list
> [email protected] | http://moscow.pm.org
>
-- 
Moscow.pm mailing list
[email protected] | http://moscow.pm.org

Ответить