gpt4 book ai didi

xslt - 使用 XSLT 将非编号列表转换为编号列表

转载 作者:行者123 更新时间:2023-12-01 23:44:30 25 4
gpt4 key购买 nike

我正在努力改变

<Address>
<Line>Some street1</Line>
<Line>Some street2</Line>
<Line>Some street3</Line>
...
</Address>

进入

<Address1>Some street1</Address1>
<Address2>Some street2</Address2>
<Address3>Some street3</Address3>
<Address4></Address4>
<Address5></Address5>

第一个 xml 是可延展的,必要时可以重新定义,但是第二个 xml 是遗留系统的一部分,我无法更改。我发现的大部分内容都正确地指出我要使用属性,但不幸的是,我希望编辑的是元素本身。

有人可以提供帮助吗?如果没有,请为我指明正确的方向?

最佳答案

就这么简单,而且可能是最短的解决方案:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output omit-xml-declaration="yes" indent="yes"/>
<xsl:strip-space elements="*"/>

<xsl:template match="Line">
<xsl:element name="Address{position()}"><xsl:apply-templates/></xsl:element>
</xsl:template>
</xsl:stylesheet>

当此转换应用于提供的 XML 文档时:

<Address>
<Line>Some street1</Line>
<Line>Some street2</Line>
<Line>Some street3</Line>
</Address>

产生了想要的正确结果:

<Address1>Some street1</Address1>
<Address2>Some street2</Address2>
<Address3>Some street3</Address3>

说明:

正确使用 xsl:element 和 AVT ( Attribute Value Templates )。

关于xslt - 使用 XSLT 将非编号列表转换为编号列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12216854/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com