Я уже нашел много stackoverflow questions
по этой теме. Но я не могу найти решение этих вопросов для своей проблемы.Php: Как игнорировать новую строку в Regex
У меня есть следующий HTML:
<p><a name="first-title"></a></p>
<h3>First Title</h3>
<h2><a href='#second'>Second Title</a></h2>
<h3>Third Title</h3>
Я хочу узнать <h3>
вставляться перед по </a></p>
. В этом случае выход должен быть:
<h3>First Title</h3>
Поэтому я реализую следующее регулярное выражение;
preg_match_all('/(?<=<\/a><\/p>)<h3>(.+?)<\/h3>/s',$html,$data);
выше регулярное выражение не может выводить что-либо из приведенного выше HTML. Но если я удаляю новые строки из html, приведенное выше регулярное выражение может корректно выводить результат моего желания.
Я не хотел бы, чтобы удалить новой строки из HTML, если это возможно. Как я должен разработать регулярное выражение игнорировать новые строки из исходной строки?
Пожалуйста, помогите мне.
Прочитайте это http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags/1732454#1732454. Регулярные выражения НЕ являются способом анализа HTML – Jojodmo