parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Итак...

Sumo 21.08.2004 21:30

Вложенные теги можно обработать только разными регэкспами [собственно можно догадаться если расписать выражение словами]. Тем не менее есть важное ограничение - вложенные друг в друга одинаковые теги будут обработаны не корректно в любом случае [можно сделать определенный уровень вложености какскадом из регулярных выражений, но универсальное выражение нельзя сделать принципиально].

Сами выражения лучше писать так:
# Не надо ставить скобки там, где они не нужны, 
# поскольку это приводит к не нужному расходованию памяти.
  $text[^text.match[\[b\](.+?)\[\/b\]][gi]{<b>$match.1</b>}]
Что касается последнего выражения, то у меня прекрасно заработало:
  ^text.match[\[table\](.+?)\[\/table\]][gi]{<table border="1">$match.1</table>}
p.s. Настоятельно рекомендую книгу "Д. Фридл. Регулярные выражения"
http://www.books.ru/shop/books/82357