小编Doc*_*ets的帖子

使用XSLT拆分和展平节点

我不能有任何嵌套的跨度,所以我需要展平它们并连接它们的类属性,这样我就可以跟踪哪些类是父类.

这是一个简化的输入:

<body>
    <h1 class="section">Title</h1>
    <p class="main">
        ZZZ
        <span class="a">
            AAA
            <span class="b">
                BBB
                <span class="c">
                    CCC
                    <preserveMe>
                        eeee
                    </preserveMe>
                </span>
                bbb
                <preserveMe>
                    eeee
                </preserveMe>
            </span>
            aaa
        </span>
    </p>
</body>
Run Code Online (Sandbox Code Playgroud)

这是所需的输出

<body>
    <h1 class="section">Title</h1>
    <p class="main">
        ZZZ
        <span class="a">
            AAA
        </span>
        <span class="ab">
            BBB
        </span>
        <span class="abc">
            CCC
            <preserveMe>
                eeee
            </preserveMe>
        </span>
        <span class="ab">
            bbb
            <preserveMe>
                eeee
            </preserveMe>
        </span>
        <span class="a">
            aaa
        </span>
    </p>
</body>
Run Code Online (Sandbox Code Playgroud)

这是我最接近的(我真的很陌生,所以即使这样做也花了很长时间......)

<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="/">
        <p> …
Run Code Online (Sandbox Code Playgroud)

xml xslt split nested flatten

6
推荐指数
1
解决办法
497
查看次数

标签 统计

flatten ×1

nested ×1

split ×1

xml ×1

xslt ×1