XPath:在 HTML 元素中搜索 HTML 元素
XPath: Search for HTML element within HTML element
使用 XPath,您将如何搜索仅包含另一个特定元素的元素?例如,什么表达式会导致获取所有包含 <strong>
元素的 <p>
标签?
<p>This is some text that <strong>contains another HTML element</strong></p>
在 XPath 中,您使用方括号进行过滤。它被称为谓词。见即this tutorial .
到 select 所有具有您使用的强元素的 p
//p[strong]
如果你想找到所有只有元素 strong 而没有其他元素的 p,你添加
//p[strong][count(*)=count(strong)]
*
代表任意元素。
如果像您的示例一样,您只对强元素是您使用的最后一个子节点的 p 感兴趣
//p[strong[not(following-sibling::node())]]
谓词是必经之路。
what expression would result in getting all p tags that contain elements within them?
如果您只想 select p
具有直接 strong
个子元素的元素,您可以使用 p[strong]
,如果您正在寻找任何后代,请使用 p[descendant::strong]
。在这两种情况下,上下文节点都必须位于 p
元素的级别。
使用 XPath,您将如何搜索仅包含另一个特定元素的元素?例如,什么表达式会导致获取所有包含 <strong>
元素的 <p>
标签?
<p>This is some text that <strong>contains another HTML element</strong></p>
在 XPath 中,您使用方括号进行过滤。它被称为谓词。见即this tutorial .
到 select 所有具有您使用的强元素的 p
//p[strong]
如果你想找到所有只有元素 strong 而没有其他元素的 p,你添加
//p[strong][count(*)=count(strong)]
*
代表任意元素。
如果像您的示例一样,您只对强元素是您使用的最后一个子节点的 p 感兴趣
//p[strong[not(following-sibling::node())]]
谓词是必经之路。
what expression would result in getting all p tags that contain elements within them?
如果您只想 select p
具有直接 strong
个子元素的元素,您可以使用 p[strong]
,如果您正在寻找任何后代,请使用 p[descendant::strong]
。在这两种情况下,上下文节点都必须位于 p
元素的级别。