我已经尝试了几个帖子但还没有成功,我想更改下表的格式(级别一直上升到100)
<level val="1">
<hp>94</hp>
<mp>30</mp>
<cp>37.6</cp>
<hpRegen>2</hpRegen>
<mpRegen>0.9</mpRegen>
<cpRegen>2</cpRegen>
</level>
<level val="2">
<hp>107.65</hp>
<mp>35.46</mp>
<cp>43.06</cp>
<hpRegen>2</hpRegen>
<mpRegen>0.9</mpRegen>
<cpRegen>2</cpRegen>
</level>
<level val="3">
<hp>121.45</hp>
<mp>40.98</mp>
<cp>48.58</cp>
<hpRegen>3</hpRegen>
<mpRegen>0.9</mpRegen>
<cpRegen>2</cpRegen>
</level>
并将其转换为以下格式(每个级别用分号分隔):
<set hpTable="94;107.65;121.45"/>
<set mpTable="30;35.46;40.98"/>
<set cpTable="37.6;43.06;48.58"/>
<set hpRegenTable="2;2;3"/>
<set mpRegenTable="0.9;0.9;0.9"/>
<set cpRegenTable="2;2;2"/>
提前致谢。
尝试手动删除标签和转换,几个Python etree替换,但大多数最终都出现错误
在 XSLT 2.0 或更高版本中:
<xsl:for-each-group select="//level/*" group-by="name()">
<set>
<xsl:attribute name="{current-grouping-key()}Table"
select="string-join(current-group(), ';')"/>
</set>
</xsl:for-each-group>