Для начала, чтобы быть понятным, я использую Regex для редактирования существующего кода HTML во многих файлах, а НЕ для анализа HTML.
Резюме: проблема, с которой мне приходится сталкиваться, заключается в том, что содержимое alt-тега в img src удаляется. Это около 4500 HTML-файлов.
Вот мой фактический пример существующей разметки HTML:
<!-- End Bottom Bar --><img src="image/sdim0490.jpg" alt="sdim0490.jpg" border="0" width="1" height="1" /><!-- Google Analytics Script -->
Что мне нужно сделать, так это удалить содержимое alt-Tag, чтобы оно было пустым. В разных папках затрагивается около 4500 html-страниц. Я использую Notepad ++, который позволяет редактировать файлы, содержащиеся в папке, с помощью Regex.
Самая сложная проблема для меня состоит в том, что на каждой HTML-странице есть как минимум 2 тега для 'img src', но мне нужно отредактировать только один из них, фактически последний его случай.
Один конкретный тег 'img src' вложен между двумя тегами комментариев, как показано в примере выше, то есть в случае редактирования ВСЕХ страниц. Но есть, но иногда есть дополнительная или даже более пустая строка (и) выше и / или ниже комментариев. Я знаю, что это не делает это проще. Но в каждом случае есть оба комментария, как указано выше и ниже. Конечно, содержимое alt-тега меняется с каждой html-страницей и никогда не бывает одинаковым и уникальным для каждой редактируемой страницы.
Результат после применения regex-edit должен выглядеть следующим образом:
<!-- End Bottom Bar --><img src="image/sdim0490.jpg" alt="" border="0" width="1" height="1" /><!-- Google Analytics Script -->
Не имеет значения, удаляются ли лишние пустые строки выше и / или ниже или нет. Важно только то, что alt-тег пуст.
Надеюсь, вы поможете мне создать регулярное выражение, которое НЕ повлияет на другие теги img src в разметке.
Причиной наличия пустого alt-тега является то, что декоративное или любое другое изображение, не имеющее значения для содержимого, должно быть помечено пустым alt-тегом. По крайней мере, то, что мне сказали о том, как поисковые роботы ценят и дифференцируют изображения (среди многих других аспектов).
Вы можете задаться вопросом, почему я устанавливаю ширину и высоту в «1». Ну, я использую эту технику, чтобы предварительно загрузить следующее изображение для просмотра, которое имеет значение для следующей страницы. Это может увеличить возможности просмотра для пользователя.
С нетерпением ждем некоторых отзывов.
Спасибо за внимание, Ганс.
ОБНОВЛЕНИЕ на мой вопрос:
Поразмыслив, я обнаружил, что у меня есть одно значение для поиска. Это: border = "0"
И это значение не нужно вообще. Таким образом, альтернативой может быть поиск этого и замена его, как показано ниже, включая предыдущее alt = "xyz":
replace: alt="xyz" border="0" with: alt=""
Это полностью послужило бы моему намерению.