-2

次のような無関係なコンテンツを削除したいという点で、Webページからテキストファイルにデータをスクレイピングしています

    </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

HTMLAgiltyPackを使用する-.NET用のオープンソースHTMLパーサーです。

Html Agility Pack(HAP)とは正確には何ですか?

これは、読み取り/書き込みDOMを構築し、プレーンXPATHまたはXSLTをサポートするアジャイルHTMLパーサーです(実際には、XPATHまたはXSLTを理解して使用する必要はありません。心配しないでください...)。これは、「Web外」のHTMLファイルを解析できるようにする.NETコードライブラリです。パーサーは、「現実世界」の不正な形式のHTMLに対して非常に寛容です。オブジェクトモデルは、System.Xmlを提案するものと非常に似ていますが、HTMLドキュメント(またはストリーム)用です。

これを使用して、HTMLを照会し、必要なデータを抽出できます。


要件に従って正規表現パターンに基づいてテキストを抽出することが最終的に必要な場合は、次の方法で行うことができます。

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 に答える