Вопрос по PCRE

Serge2k

Guest
Вопрос по PCRE

Народ, пишу курсач и возникла проблема... Надо написать прогу, красиво форматирующую и оптимизирующую код на C. При первом проходе прога полностью расставляет табуляци... В форуме у меня не получилась tab поставить, поэтому вместо него буду ставить \t. Например мне надо соптимайзить выражение типа:

\t if(1){\n
\t\t a;\n
\t\t b;\n
\t }\n

ну так вот.... мне надо из строки с кодо выцепить это выражение... написал такое RE:
[\n\t{1}if\(1\)\{(.*)\t{1}\}]
Но косяк вылезает с (.*). По моей задумке по этому выражению в карман должен был засовываться блок внутри if. Но, не отрабатывает такое выражение... может чего подскажите. Короче, задача сводится к описаю выражения внутри блока if..

-~{}~ 15.05.05 01:22:

Короче задача свелась к следующему: написать выражение, которое соотвествует подстроке начинающейся в опрделенной последовательности символов ( в моем случае это \t if(1){\n ) и заканчивающейся другой опрделенной последовательностью символов ( \t }\n )

-~{}~ 15.05.05 03:38:

мдя.... получился у меня своеобразным диалог с самим собой =)
Короче, если кому интересно, проблемы у меня были из-за того что [:space:] у меня отрабатывался неправильно... он воспринимался не только как пробел, но и как табуляция... Не знаю даже с чем это связано... заменил на [:blank:] и все заработало...
 
Сверху