У меня есть HTML, хранящийся в базе данных MySQL, которую я переношу на новую установку WordPress из Joomla. Мне нужно удалить некоторый текст подписи внизу каждой страницы.
Пример HTML:
<a href="some/link">link 1</a><p>some really long description</p><a href="another/link">link 2</a>CAPTION TEXT HERE[/caption]
Я использую PHP-скрипт для запроса базы данных и сопоставления регулярных выражений.
Мое регулярное выражение до сих пор:
/(<\/a>)(.*?)(\[\/caption\])/
Мне нужно полностью удалить 2-ю группу заголовков (ТЕКСТ ЗАГОЛОВКА ЗДЕСЬ), поэтому, по сути, заменив группы 1,2 и 3 на группы 1 и 3. Группа 2 может содержать любой буквенно-цифровой или специальный символ.
Проблема, с которой я сталкиваюсь, заключается в том, что группа захвата 1 соответствует закрывающему тегу привязки для ссылки 1 и продолжается до [/caption]
Что происходит:
</a><p>some really long description</p><a href="another/link">link 2</a>CAPTION TEXT HERE[/caption]
заменяется на:
<a href="some/link">link 1</a>[/caption]
когда мне действительно нужно:
<a href="some/link">link 1</a><p>some really long description</p><a href="another/link">link 2</a>[/caption]
Заранее спасибо!