我是新来的XPath,想考虑下面的表达式,其中n
是一个元素:XPath表达式意思
//n[parent::n and child::n]
是否在[ ]
表达意味的n
父和子节点一定是一样的吗?
还是我完全错了?谢谢。
我是新来的XPath,想考虑下面的表达式,其中n
是一个元素:XPath表达式意思
//n[parent::n and child::n]
是否在[ ]
表达意味的n
父和子节点一定是一样的吗?
还是我完全错了?谢谢。
[]中的表达式是否表示n的父节点和子节点必须相同?
您声明的正确性取决于您所指的“相同”。如果通过“相同”,你的意思是“相同”,那么声明显然是不正确的。一个节点不能同时是某个东西的父母和孩子。
另一方面,如果你打算写“同名”,那么这是真的。表达
//n[parent::n and child::n]
意味着在文档中
查找名为
n
所有元素,无处不在,但前提是他们的父元素也被称为n
,如果他们至少有一个子元素称为n
。
谢谢,这就是我的意思。如果你认为''[祖先:: n和孩子:: n]'这是否意味着“每个”祖先或只有根必须具有相同的名称? –
@PatrickWeiß两者都不是。 XPath表达式是隐式存在的量化,这意味着像'ancestor :: n'这样的表达式总是意味着:“这个名称必须至少有**一个**祖先”。对于所有的祖先来说,并不一定是真实的,具有这个名字的祖先不一定是最外层的(根)元素。 –
好了,现在我想我明白了。再次感谢。 –
安装xpath检查器添加并尝试所有你想要的 –
我会去的;) –