-2

我正在将网页上的数据抓取到文本文件中,因为我想删除一些不相关的内容,例如

    </h3>
    <div class="form clearfix">
      <a href="/matches/2012/11/11/mexico/primera-division/club-san-luis/deportivo-toluca-futbol-club/1292713/" class="form-icon form-loss " title="San Luis - Toluca 0 - 2">L</a>
      <a href="/matches/2012/11/04/mexico/primera-division/club-tijuana-xoloitzcuintles-de-caliente/club-san-luis/1292699/" class="form-icon form-draw " title="Tijuana - San Luis 0 - 0">D</a>
      <a href="/matches/2012/10/28/mexico/primera-division/club-san-luis/queretaro-fc/1292695/" class="form-icon form-draw " title="San Luis - Querétaro 0 - 0">D</a>
      <a href="/matches/2012/10/21/mexico/primera-division/club-atlas-de-guadalajara/club-san-luis/1292684/" class="form-icon form-win " title="Atlas - San Luis 2 - 3">W</a>
      <a href="/matches/2012/10/14/mexico/primera-division/club-san-luis/club-atlante/1292674/" class="form-icon form-draw last" title="San Luis - Atlante 2 - 2">D</a>
    </div>
  </div>

  <div class="container middle">
    <h3 class="thick scoretime ">   

我正在尝试将输出作为</h3><h3 class="thick scoretime ">删除其他数据。

我试过了

source = regax.replace(source, </h3>.*<h3 class="thick scoretime "> ","</h3><h3 class="thick scoretime "> ")

但它没有用。谁能指出我正确的方向?

4

2 回答 2

0

使用HTML Agilty Pack - 它是一个用于 .NET的开源HTML 解析器。

什么是 Html Agility Pack (HAP)?

这是一个敏捷的 HTML 解析器,它构建一个读/写 DOM 并支持普通的 XPATH 或 XSLT(实际上你不必了解 XPATH 或 XSLT 就可以使用它,不用担心......)。它是一个 .NET 代码库,允许您解析“网络之外”的 HTML 文件。解析器对“真实世界”格式错误的 HTML 非常宽容。对象模型与 System.Xml 的提议非常相似,但用于 HTML 文档(或流)。

您可以使用它来查询 HTML 并提取您想要的任何数据。


如果最终需要根据您的要求基于 Regex 模式提取文本,您可以这样做:

Regex regex = new Regex("</h3>(?<Junk>.*)<h3 class=\"thick scoretime \">",
    RegexOptions.None | RegexOptions.Singleline);
var extractedString = regex.Replace(htmlString, "${Junk}");
于 2012-11-13T18:56:40.923 回答
0

以下将搜索所有

 string file = "TheEntireFileIsInThisBuffer";
 string pattern = "<div.*</div>"; 
 RegEx rgx = new RegEx(pattern);
 string fileWithOutDivs = rgx.Replace(file, System.String.Empty);
于 2012-11-13T19:04:28.413 回答