2017-01-09 1 views
1

<td>要素のmyTEXTmyClassクラスに取得しようとしています。<element>をRegexでクラスごとに取得

例:<td class="myClass" colspan="3">myTEXT</td>

私はUsing regex to get text between multiple HTML tagsようなもので試してみましたが、私はMyClassのによってフィルタリングする必要がありました。

私は先読みが新しく、(?=(<td.*)class="myClass".*?>){1}(.*?)<\/td>を使用して一致させることができましたが、<td(...)></td>が含まれています。

は、だから私の質問は、どのように私は、テキストのみMyClassのクラスを使用して<td>すべてのの間に取得することができますか?私は、これはあなたを助けることができることを願っています

HtmlAgilityPack.HtmlDocumnet doc = new HtmlAgilityPath.HtmlDocumnet(); 
doc.LoadHtml(your html string); 

HtmlAgilityPack.HtmlNodeCollection col = doc.DocumentNode.SelectNodes("//img"); 
foreach(var node in col) { 
    Console.WriteLine(node.OuterHtml); 
} 

+0

HTMLを解析する場合は、RegExを使用する方が良い方法があります。または、正規表現を使用しなければならない場合は、それだけで1行になります。 ^ \ s * \ (?。*)\ $ ここで、textはキャプチャグループの名前になります。 – dgorti

+0

はい、HTMLを解析することです。また、提案はエラーを返します:http://regexr.com/3f165 – Dillinger

+0

あなたはC#の質問として質問しましたが、.NETの正規表現構文を使用しました。 regexstormでテストしたところ、動作しているようです – dgorti

答えて

1

多分...あなたは、あなたがこのように使用することができますので、この1つはサポートXPathの文法である。この http://html-agility-pack.net/

を使用することができます。