【问题标题】:Confusing sequence of code混乱的代码序列
【发布时间】:2012-06-05 10:46:38
【问题描述】:

我正在尝试使用 HTML Agility Pack 对某些网页进行解析。 这是我在示例中遇到的一行代码。

var div = document.DocumentNode.Descendants().Where(n => n.Name == "div")

当在 Visual Studio 中放置在 n 上时,工具提示会显示“(参数)HTMLNode n”

我不确定 n 是什么以及这条线是做什么的

【问题讨论】:

    标签: visual-studio-2010 c#-4.0 html-parsing html-agility-pack


    【解决方案1】:

    此代码选择标签名称==“div”的文档根节点的所有后代

    • document.DocumentNode 选择根节点
    • .Descendants() 选择根节点中的所有节点(不仅是直接子节点,而且是所有节点)
    • .Where() 仅选择符合某些条件的人
    • n => n.Name == "div" 是标准本身,意思是“如果 n 是一个节点,那么当节点的 Name 等于 时标准为真>“div”

    【讨论】:

    • 但是语句的每个部分到底发生了什么?比如什么是 (n=> n.Name = "div")
    猜你喜欢
    • 2013-05-27
    • 2016-05-20
    • 2015-02-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-04
    相关资源
    最近更新 更多