我正在努力将列表的一部分转换为一个组。
假设我有一个这样的列表:
<table>
<tr>
<td>One</td>
</tr>
<tr>
<td>Two</td>
</tr>
<tr>
<td><a href="#">Three</a></td>
</tr>
<tr>
<td><a href="#">Four</a></td>
</tr>
<tr>
<td><a href="#">Five</a></td>
</tr>
<tr>
<td>Six</td>
</tr>
</table>
并想将其转换为
<p>One</p>
<p>Two</p>
<div class="group">
<a href="#">Three</a>
<a href="#">Four</a>
<a href="#">Five</a>
</div>
<p>Six</p>
我不知道如何实现这一点。有什么建议么?
编辑: 有这样的东西会很有帮助:
<xsl:template match="td[a and ( preceding-sibling::td/a or following-sibling::td/a )]">
<div class="group"> <!-- this has to be called one time !! -->
<xsl:for-each select=".//a">
<xsl:apply-templates select="."/>
</xsl:for-each>
</div>
</xsl:template>
我的方法是括号应该将所有匹配分组到模板的一次执行中,以便只创建一个分组 div。