令人困惑的代码序列

时间:2012-06-05 10:46:38

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

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

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

工具提示说"(参数)HTMLNode n"在visual Studio中放置n时

我不确定n是什么以及这行做什么

1 个答案:

答案 0 :(得分:1)

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

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