簡體   English   中英

c#htmlagility根據內部文本選擇特定的節點

[英]c# htmlagility Select specifics nodes depending on the innertext

我在div中有多個標簽。 這些標簽具有一個名稱為“ Return”或“ Going”的類,例如:

<div>
    <label class="going"></label>
    <label class="going"></label>
    <label class="going"></label>
    <label class="going"></label>
    <label class="return"></label>
    <label class="return"></label>
    <label class="return"></label>
</div>

我想得到兩個IEnumerable標簽,一個going一個,一個return 就像是

var going = node.SelectNodes("label").Where(item => item.InnerHtml == "going");
var return= node.SelectNodes("label").Where(item => item.InnerHtml == "return");

您可能要使用此方法:

public static bool HasClass(this HtmlNode node, params string[] classValueArray)
{
    var classValue = node.GetAttributeValue("class", "");
    var classValues = classValue.Split(' ');
    return classValueArray.All(c => classValues.Contains(c));
}
//use it like this
doc.DocumentNode.Descendants("label").Where(_ => _.HasClass("going"))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM