我试图弄清楚如何处理一封更接近的一封信的某一部分。在这个xml文件
中 <?xml version="1.0" encoding="UTF-8"?>
<a>
<closer>regards<lb/><signed>William</signed></closer>
<closer>until next tuesday<lb/>regards<lb/><signed>William</signed></closer>
<closer>until next tuesday<lb/>regards <signed>William</signed></closer>
</a>
我位于最后一个换行符(lb),想要知道是否有更多文本跟随签名。我毫无结果地尝试了像
这样的事情//substring-after(parent::closer, lb[last()]) = signed
但它没有用。我该如何正确地测试呢?
答案 0 :(得分:1)
您可以使用following-sibling::node()[not(self::signed)]
选择不是lb
元素的上下文节点(您称之为signed
元素)后面的任何节点。在像<xsl:if test="following-sibling::node()[not(self::signed)]">
这样的布尔上下文中,只有当这样的节点存在时才会计算为真。