Я использую шаблон регулярного выражения, чтобы найти удаляемую строку, которая разделена двумя строками (скажем, «НАЧАЛО» и «ЗАВЕРШЕНИЕ»). Итак, STARTsome_string_to_deleteFINISH
Проблема в том, что строки START и FINISH являются тегами HTML, содержащими символы <>.
Когда я использую онлайн-тестеры регулярных выражений, их шаблон работает нормально, но когда я вставляю выражение в плагины Wordpress, которые я использую (например, WPEMatico, который обрабатывает RSS для новых сообщений), я продолжаю получать ошибки.
Я пробовал экранировать специальные символы с помощью обратной косой черты. Не работает.
Любой совет?
Вот пример строки, которую я использовал:
==========================================
(\<!-- Facebook Comments Plugin for WordPress).+?(</comments>)
==========================================
Пожалуйста, вставьте соответствующий текст / код в вопрос как текст, а не как изображение.






Вероятно, у вас не включен "однострочный режим". Однострочный режим позволяет . сопоставлять символы новой строки.
Например, это регулярное выражение не работает, потому что не включен однострочный режим. Но Вот этот действительно работает.
Если ваш обработчик регулярных выражений поддерживает однострочный режим, вы можете включить однострочный режим, поставив перед регулярным выражением (?s): (?s)<!-- Facebook Comments Plugin for WordPress.+?</comments>. Если нет, то должно работать что-то вроде этого: <!-- Facebook Comments Plugin for WordPress(?:.|[\r\n])+?</comments>
Обратите внимание, что я удалил (), потому что они были лишними, если вы действительно не хотите захватывать текст.
Добро пожаловать в Переполнение стека. Пожалуйста, предоставьте минимальный воспроизводимый пример, чтобы вы могли получить помощь от сообщества.