如何使用正则表达式获取包含特定文本的所有HTML标记?

时间:2016-10-13 18:26:35

标签: c# regex text tags contains

我是正则表达式的新手,我无法做到我需要的东西。

我们假设我们有这样的文字:

void

我需要获取包含“los gatos”文本的所有标签。

它应符合4个巧合:

<h1>Título</h1>
<h2>Los gatos felices</h2>
Existen una serie de gatos...
<h2 style="color:red" class="grande">los gatos: curiosidades</h2>
<p style='text-align: justify;' align='justify'>De por si 
<strong>los gatos</strong> saben saltar y además 
<strong>los perros odian a los gatos</strong>
</p>

如何使用正则表达式解决它?

编辑:

我终于找到了我需要的东西!我可以为任何可能需要它的人分享它:

- <h2>Los gatos felices</h2>

- <h2 style="color:red" class="grande">los gatos: curiosidades</h2>

- <strong>los gatos</strong>

- <strong>los perros odian a los gatos</strong>

1 个答案:

答案 0 :(得分:1)

而不是正则表达式使用真正的Html解析器,如HtmlAgilityPack

var doc = new HtmlAgilityPack.HtmlDocument();
doc.LoadHtml(yourhtmlstring);

var h2s = doc.DocumentNode.SelectNodes("//h2").Select(x => x.InnerText).ToList();