gpt4 book ai didi

html - 包含在一个 XML 元素或另一个 XML 元素中的字符串的 XPath?

转载 作者:搜寻专家 更新时间:2023-10-31 23:01:28 24 4
gpt4 key购买 nike

我需要一个可以找到 <a> 的 XPath标签,或 <option>标签,每个标签都包含“某物”。

所以 XPath 可以匹配其中一个

<a attributes='value'>something</a>

<option attributes="value">something</option>

我试过这个:

$x("//*[local-name()='a' contains(.,'something') or local-name()='option' contains(.,'something')]")

我也试过这个:

$x("//*[local-name(contains(.,'something'))='a' or local-name(contains(.,'something'))='option']")

但是它们都不起作用。在第一个中,我可以排除 contains()它找到了标签,但我需要能够搜索那些只包含指定“某物”文本的标签。

最佳答案

您真的应该发布您输入的 XML。

假设是这样的:

<r>
<a>xxx something</a>
<a>yyy nothing</a>
<option>something xxx</option>
<option>nothing xxx</option>
</r>

(1) 然后(如果您试图忽略命名空间):

//*[(local-name() = 'a' or local-name() = 'option')][contains(., 'something')]

(2) 或(如果没有命名空间)[来源:@alecxe 之前的帖子]:

//*[self::option or self::a][contains(., "something")]

(3) 或(如果使用 XPath 2.0,同样没有命名空间):

//(a|option)[contains(., 'something')]

会选择

<a>xxx something</a>
<option>something xxx</option>

关于html - 包含在一个 XML 元素或另一个 XML 元素中的字符串的 XPath?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29547938/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com