Соответствующий тег пары с регулярным выражением
Я пытаюсь извлечь определенные теги с их содержимым из документа xhtml, но они соответствуют неверным конечным тегам.
В следующем содержании:
<cache_namespace name="content">
<content_block id="15">
some content here
<cache_namespace name="user">
<content_block id="welcome">
Welcome Apikot!
</content_block>
</cache_namespace>
</content_block>
</cache_namespace>
Конечный тег content_block для id = "welcome" фактически совпадает с конечным тегом первого открывающего тега content_block.
Я использую регулярное выражение:
/<content_block id="(.*)">([\w\W]*?)<\/content_block>/i
Какие-нибудь указатели относительно того, где я терплю неудачу?