0

我正在尝试使用下面的 XSLT 来转换我的 XML 文档,并且转换工作正常。我现在需要的是能够在列表项文本节点值内的空格字符之前获得第一组数字。目的是在内部使用它<doc:id>

我努力了:

<xsl:template match="li">
    <document>
        <title><xsl:apply-templates/></title>

        <location>


            <xsl:value-of select="concat('http://localhost/auto/teo',mydoc)"></xsl:value-of>
           <test>
               <xsl:for-each select="text()[1]">
                   <xsl:value-of select="."/>
               </xsl:for-each>

           </test>
        </location>
            <extension >

                  <doc:id>

                      <xsl:number value="position()" format="01" />
                    </doc:id>

            </extension>
        </document>
</xsl:template>

这是转换的源文档:

<html>
<head>
  <title></title>
</head>
<body>

  <!-- This is my first comment -->
 <ol>
    <li>1 data</li>
    <li>2 data</li>
    <li>3 data</li>
    <li>4 data</li>
    <li>5 data</li>
    <li>6 data</li>
    <li>7 data</li>
    <li>8 data</li>
    <li>9 data</li>
    <li>10 data</li>
    <li>11 data</li>
    <li>12 data</li>
    <li>13 data</li>
 </ol>
</body>
</html>
4

1 回答 1

0

请尝试以下方法:

<doc:id>
   <xsl:number value="substring-before(., ' ')" format="01" />
</doc:id>
于 2013-07-16T20:16:06.613 回答