Регулярные выражения для HTML - PullRequest
1 голос
/ 01 марта 2012

Я пытаюсь найти следующие регулярные выражения для реализации в моей программе для анализа данного файла HTML. Не могли бы вы помочь мне с любым из них?

<div>
<div class=”menuItem”> 
<span> 
class=”emph” 
Any string beginning with < and ending with >, i.e. all tags. 
The contents of the body tag.
The contents of all divs 
All divs that make menus

Мне удалось выяснить, что один тег div просто " < div >" и выражение "все теги" <(\"[^\"]*\"|'[^']*'|[^'\">])*>

Как вы думаете, вы могли бы помочь мне с остальными? Заранее спасибо, ребята ...

Я знаю, что разбор HTML - это уже решенная проблема, и регулярное выражение неэффективно, однако мне предлагается сделать это следующим образом, чтобы продемонстрировать, как могут работать регулярные выражения, делая их (иногда) длинными и подробными. Вот почему я просто обрабатываю файл HTML, который у меня есть, как простой текстовый файл, и мне нужно применить к нему эти регулярные выражения.

1 Ответ

4 голосов
/ 01 марта 2012

Пожалуйста, для вашего удобства рассмотрите возможность использования библиотеки HTML-анализатора для языка, который вы используете.Регулярные выражения не подходят для этого приложения - они не могут надежно или чисто обрабатывать структурированные данные, такие как HTML.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...