Как проверить отсутствие атрибута alt у тега img ругуляркой на php?
На сайте есть статьи у которых в теге img нет атрибута alt. А он там обязательно должен быть по требованию SEO специалистов. Подскажите можно ли как-то составить регулярное выражение которое бы находило тег img и проверяло в нем наличие атрибута alt? Другими словами нужно выбрать все теги img у которых вообще нет атрибута alt.
Дополнительно:
Можно. Но удобнее будет просмотреть dom дерево
$dom = new DOMDocument(); $dom->loadHTML($html); $xpath = new DOMXPath($dom); foreach ($xpath->query("//img") as $img) { $alt = $img->getAttribute('alt'); } |
$dom = new DOMDocument(); $dom->loadHTML($html); $xpath = new DOMXPath($dom); foreach ($xpath->query("//img") as $img) { $alt = $img->getAttribute('alt'); }
попробуй так:
<img(?![^>]*balt=)[^>]*>
В Notepad++ я нахожу все img где нет атрибута alt
- Спасибо большое, то что нужно!
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос
Для проверки отсутствия атрибута alt у тега img с использованием регулярного выражения в PHP, можно воспользоваться функцией preg_match(). Вот пример кода: