2009-05-06 4 views
0

Я разбираю некоторый источник HTML. Есть ли скрипт регулярного выражения, чтобы узнать, являются ли теги alt в html-документе пустыми?Получение тегов alt с регулярным выражением

Я хочу видеть, являются ли теги alt пустыми или нет.

Является ли регулярное выражение подходящим для этого или я должен использовать манипуляции строк в C#?

+0

Является ли это мной или есть переполненность вопроса regexhtml в последнее время? – annakata

+0

@annakata: Увеличивается частота, это тоже мое чувство. С другой стороны, в вопросах CSS/HTML в целом наблюдается рост. – Tomalak

ответ

2

Вы должны проанализировать HTML-код и проверить теги, использовать следующую ссылку, он включает в себя библиотеку C# для синтаксического анализа HTML-тегов, а также вы можете пропустить теги и получить количество тегов: Parsing HTML tags.

0

Если это действительно XHTML, зачем вам Regex вообще? Если вы просто искать строку:

alt=""

... Вы должны быть в состоянии найти все пустые alt тегов.

В любом случае, он не должен быть слишком сложным, чтобы построить Regex для поиска слишком, принимая во внимание плохо написанного HTML разметки (особенно с пробелами):

alt\s*=\s*"\s*" 
+1

Что делать, если 'alt = ""' является частью обычного текста? – Tomalak

+0

и двойная кавычка могут быть одинарными кавычками, даже если кавычки HTML действительно неаккуратные, кавычки даже не могут быть. –

+0

Да, я хорошо знаю эти возможности. ОП не предоставил достаточно информации для нас, чтобы сделать разумное предположение. – Cerebrus

0

Если вы хотите, чтобы это сделать просто глядя на страницу, тогда селектор CSS может быть лучше, если ваш браузер поддерживает: not selector.

Установите буклет selectorgadget. Активируйте его на своей странице, а затем установите следующий селектор в поле ввода и нажмите клавишу ввода.

img:not([alt]) 

Если вы автоматизации, и иметь доступ к DOM для HTML вы можете использовать один и тот же селектор.

Смежные вопросы