【问题标题】:HtmlAgilityPack select "p" nodes that don't have child "p"HtmlAgilityPack 选择没有子“p”的“p”节点
【发布时间】:2011-10-05 16:56:36
【问题描述】:

如何有效地选择不是x 类型节点的子节点的x 类型的所有节点?

类型为p的示例:

<p id="top1">
    <ul>
        <li>Text</li>
        <li>Text</li>
        <li>Text</li>
    </ul>
    <div>
        <p id="sub">
            <p id="sub_sub">
            </p>
        </p>
    </div>
</p>
<div>
    <div>
        <p id="top2">
        </p>
    </div>
</div>

选择应该只返回ID为top1top2的节点

【问题讨论】:

  • 不应该也返回sub_sub吗?您是在严格寻找 p 节点还是 any 节点?您的问题没有明确说明。

标签: html-parsing html-agility-pack


【解决方案1】:

像这样:

elem.Descendants().Where(e => !e.Descendants("p").Any())

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多