У меня есть такие данные:
<h4>Test1</h4>
<p>test</p>
<div>test</div>
<p>test</p>
<h4>Test2</h4>
<p>test</p>
<div>test</div>
<p>test</p>
<h4>Test3</h4>
<p>test</p>
<div>test</div>
<p>test</p>
Я пытаюсь захватить все родственные узлы H4, пока не дойду до другого H4.
Сейчас я использую:
<xsl:for-each select="//h4”>
<xsl:copy-of select="following-sibling::*[generate-id(preceding-sibling::h4[1]) = generate-id(current())]"/>
</xsl:for-each>
Это работает, но захватывает последний тег h4. Я хочу исключить этот тег h4. В настоящее время вывод выглядит следующим образом:
<p>test</p>
<div>test</div>
<p>test</p>
<h4>Test2</h4>
Есть ли способ не захватить h4?