我試圖把這種XML的相同元素的塊:XSLT - 選擇
<!--- potential other elements before-->
<li>bla</li>
<li>bli</li>
<li>blo</li>
<anytag/>
<li>pla</li>
<li>pli</li>
<li>plo</li>
到:
<!--- potential other elements before-->
<ul>
<li>bla</li>
<li>bli</li>
<li>blo</li>
</ul>
<anytag/>
<ul>
<li>pla</li>
<li>pli</li>
<li>plo</li>
</ul>
所以基本上,選擇所有<li>
是兄弟姐妹,沒有任何他們之間的其他元素。
我正在使用XSLT 2.0。
所以我想在做類似的:
<xsl:template match="li[1]">
<ul>
<li>
<xsl:value-of select="." />
</li>
<xsl:apply-templates select="following-sibling::li[preceding-sibling::node()][1]" mode="add-to-ul"/>
</ul>
</xsl:template>
<xsl:template match="li" mode="add-to-ul">
<li>
<xsl:value-of select="." />
</li>
</xsl:template>
<xsl:template match="li">
</xsl:template>
首先,這看上去並不是很優雅,而且它並沒有因爲李的工作,如果我有幾個[1]失敗清單,顯然。
有什麼想法?
對於每組來說,好主意,謝謝:) – Flag