首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >多标签间的序列号生成

多标签间的序列号生成
EN

Stack Overflow用户
提问于 2016-04-14 14:16:14
回答 1查看 28关注 0票数 0

我的输入xml格式如下

代码语言:javascript
复制
<root>
    <entity>
        <entityrecord>
            <field>
                <id>Parent</id>
                <value>P-1</value>
            </field>
            <entity>
                <entityrecord>
                    <field>
                        <id>Child</id>
                        <value>C-1</value>
                    </field>
                </entityrecord>
                <entityrecord>
                    <field>
                        <id>Child</id>
                        <value>C-2</value>
                    </field>
                </entityrecord>
            </entity>
        </entityrecord>
        <entityrecord>
            <field>
                <id>Parent</id>
                <value>P-2</value>
            </field>
            <entity>
                <entityrecord>
                    <field>
                        <id>Child</id>
                        <value>C-1</value>
                    </field>
                </entityrecord>
                <entityrecord>
                    <field>
                        <id>Child</id>
                        <value>C-2</value>
                    </field>
                </entityrecord>
                <entityrecord>
                    <field>
                        <id>Child</id>
                        <value>C-3</value>
                    </field>
                </entityrecord>
            </entity>
        </entityrecord>
        <entityrecord>
            <field>
                <id>Parent</id>
                <value>P-3</value>
            </field>
            <entity>
                <entityrecord>
                    <field>
                        <id>Child</id>
                        <value>C-1</value>
                    </field>
                </entityrecord>
                <entityrecord>
                    <field>
                        <id>Child</id>
                        <value>C-2</value>
                    </field>
                </entityrecord>
                <entityrecord>
                    <field>
                        <id>Child</id>
                        <value>C-3</value>
                    </field>
                </entityrecord>
            </entity>
        </entityrecord>
    </entity>
</root>

我的输出格式应该是

代码语言:javascript
复制
1^P-1
2^C-1
3^C-2
4^P-2
5^C-1
6^C-2
7^C-3
8^P-3
9^C-1
10^C-2
11^C-3

我尝试了许多不同的方法来完成这件事,但都没有成功。我无法生成序列number.can在这种情况下,有人能帮我吗

EN

回答 1

Stack Overflow用户

发布于 2016-04-14 14:29:26

假设所提供的输出中的重复6是错误的,请尝试:

XSLT 1.0

代码语言:javascript
复制
<xsl:stylesheet version="1.0" 
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text" encoding="UTF-8"/>
<xsl:strip-space elements="*"/>

<xsl:template match="field">
    <xsl:number count="field" level="any"/>
    <xsl:text>^</xsl:text>
    <xsl:value-of select="value"/>
    <xsl:text>&#10;</xsl:text>
</xsl:template>

</xsl:stylesheet>

应用于您的示例输入,结果将是:

代码语言:javascript
复制
1^P-1
2^C-1
3^C-2
4^P-2
5^C-1
6^C-2
7^C-3
8^P-3
9^C-1
10^C-2
11^C-3
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36615135

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档