0

我有一个像

<A>
 <B>
    <C>90</C>
    <D>var 1</D>
 </B>
 <B>
    <C>90</C>
    <D>var 2</D>
 </B>
 <B>
    <C>90</C>
    <D>var 3</D>
 </B>
</A>

我只需要显示元素“C”的值一次(因为 xml 是由第三方生成的,并且元素“C”在 B 的每个节点中重复。不正确的方式,但我对此无能为力)。

现在,当我得到 C 的值(使用下面)时,它给我的值为“909090”,而我只需要“90”。怎么去??如果我能以某种方式获得列表大小,然后将结果字符串的长度除以子字符串的长度。但是如何获得列表长度。

<fo:table-row>
 <fo:table-cell>
    <fo:block-container>
        <fo:block>C :: </fo:block>
    </fo:block-container>
 </fo:table-cell>
 <fo:table-cell>
    <fo:block-container>
        <fo:block>
            <xsl:apply-templates select="A/B/C"/>
        </fo:block>
    </fo:block-container>
 </fo:table-cell>
</fo:table-row>
4

1 回答 1

2

那么你总是可以使用<xsl:apply-templates select="(A/B/C)[1]"/>只处理第一个C元素。

于 2013-06-27T10:29:26.890 回答