【问题标题】:XPATH to select child elements that contain the entire text node of the parent elementXPATH 选择包含父元素的整个文本节点的子元素
【发布时间】:2017-03-20 16:56:44
【问题描述】:

我正在寻找一个 XPATH 表达式,只要它包含父元素的整个文本节点,它就会选择子节点。 例如:

<title><italic>Here is my title</italic></title>

(这里我想选择斜体,因为它包括其父级的全部内容。 但我不想选择:

<title>Here is my <italic>italic</italic> title</title>

<title><bold>Here is my </bold><italic>italic title</italic></title>

(此处,斜体仅包含部分父文本)

有什么想法吗? 谢谢! 弗兰齐斯卡

【问题讨论】:

    标签: xml xpath


    【解决方案1】:

    这个 XPath,

    /*//*[. = ..]
    

    将选择根元素下的字符串值等于其父元素的所有元素。

    所以,对于这个 XML,

    <r>
      <title><italic>Here is my title</italic></title>
      <title>Here is my <italic>italic</italic> title</title>
      <title><bold>Here is my </bold><italic>italic title</italic></title>
      <title><italic><bold>Another</bold></italic><italic> case</italic></title>
    </r>
    

    以下元素,

    <italic>Here is my title</italic>    
    <bold>Another</bold>
    

    将被选中。

    【讨论】:

    • 抱歉,我的要求不是很清楚,但是您刚刚添加的 XPath 工作得非常好。非常感谢!
    猜你喜欢
    • 2023-03-18
    • 1970-01-01
    • 1970-01-01
    • 2021-02-23
    • 1970-01-01
    • 2011-04-20
    • 1970-01-01
    • 2018-06-15
    • 1970-01-01
    相关资源
    最近更新 更多