1

我有一个textarea带有tinyMCE文本编辑器的RichTextEditor。我想提取所有没有样式和格式的标题(H1、H2 等)文本。
假设这txtEditor.InnerText给了我如下价值:

<p><span style="font-family: comic sans ms,sans-serif; color: #993366; font-size: large; background-color: #33cccc;">This is before heading one</span></p>
<h1><span style="font-family: comic sans ms,sans-serif; color: #993366;">Hello This is Headone</span></h1>
<p>this is before heading2</p>
<h2>This is heading2</h2>

我只想获取标题标签文本的列表?任何形式的建议和指导将不胜感激。

4

2 回答 2

3

使用HtmlAgilityPack,然后很容易:

  var doc = new HtmlDocument();
  doc.LoadHtml(txtEditor.InnerText);
  var h1Elements = doc.DocumentNode.Descendants("h1").Select(nd => nd.InnerText);
  string h1Text = string.Join(" ", h1Elements);
于 2013-01-09T14:26:48.303 回答
0

引用正则表达式以读取 HTML 中的标签
我相信这与您正在寻找的内容很接近:

String h1Regex = "<h[1-5][^>]*?>(?<TagText>.*?)</h[1-5]>";

MatchCollection mc = Regex.Matches(html, h1Regex);
于 2013-01-09T14:29:56.057 回答