我正在寻找一个XPATH表达式,它选择子节点,只要它包含父元素的整个文本节点。 e.g:
<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>
(此处,斜体仅包含父文本的一部分)
有什么想法吗? 谢谢! 弗兰齐斯卡
答案 0 :(得分: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>
将被选中。