这个xpath是啥意思“//Form/*[.='on']”
Posted
技术标签:
【中文标题】这个xpath是啥意思“//Form/*[.=\'on\']”【英文标题】:what does this xpath means "//Form/*[. = 'on']"这个xpath是什么意思“//Form/*[.='on']” 【发布时间】:2011-06-06 14:07:27 【问题描述】:我是xml相关的新手 我无法理解:
SelectNodes(@"//Form/*[. = 'on']");
注意:SelectNodes是XmlNode的函数。(与XmlDocument相关)
请告诉我这段代码 sn-p 是什么意思?
【问题讨论】:
@Cold 夏威夷代码行是 XmlNodeList selectedFields = formXmlDoc.SelectNodes(@"//Form/*[. = 'on']"); //请注意 formXmlDoc 的类型是 XmlDocument.Xml 是事先验证的。 【参考方案1】:.
表示当前元素节点,不管它是什么。谓词检查元素的文本节点,看它是否是字符串'on'
。
这样 XPath 查询会选择任何属于 Form
节点的子节点并且值为 on
的节点。
【讨论】:
一些额外的文档供将来参考,MSDN 和 W3Schools。 @BoltCock,Cold Hawaiian : 如果我的输入是 "" 那么 SelectNodes(@"//Form /*[.='on']").Count ? 0 还是 1?并告诉我在什么情况下(什么输入)应该提供(参考给定的输入)以获得 SelectNodes(@"//Form/*[. = 'on']").Count NON-Zero or 1 @Pratik:它将为 0,因为没有一个元素在其值中包含单词on
。如果要选择内部有<Selected>1</Selected>
的元素,请使用//Form/*[Selected='1']
@BoltClock:谢谢。但是在不改变 SelectNodes(@"//Form/*[. = 'on']"); 的情况下,我应该输入什么来获得 1
@Pratik:您选择了表单中的哪个项目? <txtInput />
有关系吗?以上是关于这个xpath是啥意思“//Form/*[.='on']”的主要内容,如果未能解决你的问题,请参考以下文章
最近在自学python girlphoto_urls = selector.xpath('//div/a/img/@src')这句是啥意思?大神