Проблема кавычек при парсинге атрибутов через регулярки в PHP
Кавычки атрибутов могут быть не только двойными, но и одинарными:
<img src="1.png">
<img src='2.png'>
Давайте учтем это в нашей регулярке:
<?php
preg_match_all('#src\s*=\s*(["\'])(.+?)\1#su', $str, $matches, PREG_PATTERN_ORDER);
?>
Проверим, что все работает:
<?php
var_dump($matches[2]);
?>
Найдите содержимое всех атрибутов href
:
<a href="page1.html">link1</a>
<a href='page2.html'>link2</a>
<a href = 'page3.html'>link3</a>