【发布时间】:2018-10-18 10:29:50
【问题描述】:
我有时会在 xml 文件(命名空间 tei)中出现以下内容:
<tei:p>some text</tei:p><tei:add>some note</tei:add>
我的目标是删除<add/>,仅当它是<p> 之后的下一个兄弟元素,而不是可能出现在文件中的其他<add/> 元素。
我在 XSLT 2.0 中尝试过,但没有效果:
<xsl:template match="tei:add[preceding-sibling::node()[1][local-name()='p']]"/>
感谢您的帮助。
【问题讨论】:
-
对于您显示的 XML sn-p,模板匹配应该可以工作(请参阅 xsltfiddle.liberty-development.net/3NzcBtV )。但是,它可能无法匹配的一个原因是,如果您在
p和add之间有一个空白节点(如新行)。 -
啊,是的,可能是换行问题。