特定のタグを取得するには?

c# html-agility-pack

質問

私はHtmlAgilityPackを使用しており、特定のテキストを内部に含む特定aタグを取得しようとしています。私はこのhtml構造を持っていると仮定します:

<ul>
    <li class="current">
        <a href="/matches/2018/05/20/italy/serie-a/ss-lazio-roma/fc-internazionale-milano/2539153/">Summary</a>
    </li>
    <li class="">
        <a href="/matches/2018/05/20/italy/serie-a/ss-lazio-roma/fc-internazionale-milano/2539153/head2head/">H2H Comparison</a>
    </li>
    <li class="">
        <a href="/matches/2018/05/20/italy/serie-a/ss-lazio-roma/fc-internazionale-milano/2539153/commentary/">Commentary</a>
    </li>
    <li class=""><a href="/matches/2018/05/20/italy/serie-a/ss-lazio-roma/fc-internazionale-milano/2539153/venue/">Venue</a>
    </li>
    <li class="">
        <a href="/matches/2018/05/20/italy/serie-a/ss-lazio-roma/fc-internazionale-milano/2539153/map/">Map</a>
    </li>
</ul>

私が取得したいと含まれているタグa InnerText 「会場を」:。実際に私の考えはこれです:

var nodes = nodes.SelectNodes("//li//a");
HtmlNode a;

foreach(var node in nodes)
{
   if(node.InnerText.ToLower().Contains("venue"))
   {
       a = node;
       break;
   }
}

これはコードの動作ですが、おそらくxpathなどを使用して別の方法が存在する?

受け入れられた回答

これは、 "Venue"という単語を含むすべてのアンカータグを返します//a[contains(text(),'Venue')]



Related

ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ
ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ