Я пытаюсь написать регулярное выражение, чтобы извлечь текст списка URL-адресов из источника HTML href
и anchor
. Текст anchor
может быть любым значением.Как я могу проанализировать этот HTML-код с регулярным выражением?
HTML, часть идет следующим образом:
<div class="links"><a rel="nofollow" target="_blank" href="http://url1.com" class="get-all">URL1</a><a rel="nofollow" target="_blank" href="http://url2.com" class="get-all">This is Url-2</a><a rel="nofollow" target="_blank" href="http://url3.com" class="get-all">This is Url-3</a><a rel="nofollow" target="_blank" href="http://url4.com" class="get-all">Sweet URL 4</a></div>
Я попробовал следующее регулярное выражение, но это не работает, так как она захватывает все до </a>
тега и выходит из строя.
preg_match_('/<a rel="nofollow" target="_blank" href="(.*)" class="see-all">(.*)<\/a>/', $source , $website_array);
Что было бы регулярным выражением для извлечения моих необходимых данных?
Почему вы просто не разобрать HTML? – Blender
http: // stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contains-tags # answer-1732454 Не используйте регулярное выражение для оценки HTML, вместо этого проанализируйте его. Самый простой ответ: HTML не является обычным языком. – KingCrunch
Ребята, я получаю ваш «Dont использовать Regex для разбора HTML», но это очень простая проблема. Я не хочу менять весь свой код, чтобы не использовать Regexp. –