zoukankan      html  css  js  c++  java
  • Xslt中递归的实现

    <?xml version="1.0" encoding="gb2312"?>
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format">
        
    <xsl:template match="/">
            
    <!--      addFunction(addString,currentNum,theResult)     -->
            
    <xsl:call-template name="addFunction">
                
    <xsl:with-param name="addString" >1</xsl:with-param>
                
    <xsl:with-param name="currentNum">1</xsl:with-param>
                
    <xsl:with-param name="theResult" >1</xsl:with-param>
         
    </xsl:call-template>
         
        
    </xsl:template>

        
    <!-- 
            void addFunction(string addString,int currenNum,int thgeResult) 
            {
                Console.Write(addString + "+" + currenNum.ToString() + " =");
                Console.WriteLine((currenNum+thgeResult).ToString());

                if (currentNum<10)
                {
                    addFunction(addString+"+"+currentNum.ToString(),currenNum+1,thgeResult+currenNum); 
                }
            }
        
    -->
        
    <xsl:template name="addFunction">
            
    <xsl:param name="addString"/>
            
    <xsl:param name="currentNum"/>
            
    <xsl:param name="theResult"/>
            
            
    <xsl:value-of select="concat($addString,'+',$currentNum)"/> = 
            
    <xsl:value-of select="$theResult + $currentNum"/>
            
    <br/>
            
    <xsl:if test="$currentNum &lt;= 10 ">
                
    <xsl:call-template name="addFunction">
                    
    <xsl:with-param name="addString" select="concat($addString,'+',$currentNum)"/>
                    
    <xsl:with-param name="currentNum" select="$currentNum + 1"/>
                    
    <xsl:with-param name="theResult" select="$theResult + $currentNum"/>
                
    </xsl:call-template>
             
    </xsl:if>
        
    </xsl:template>
    </xsl:stylesheet>

  • 相关阅读:
    利用Libra进行机器学习和深度学习
    生产中的ML-1:Amazon Sagemaker-AWS,设置,训练和部署
    PANDAS: 新手教程 一
    dblink连接操作远程数据库
    Tomcat设置开机自动启动
    DataRow[] 转为数组
    C#子线程刷新界面并关闭窗体
    SQL SERVER 生成建表脚本
    SQL SERVER 生成MYSQL建表脚本
    SQL SERVER 生成ORACLE建表脚本
  • 原文地址:https://www.cnblogs.com/goodspeed/p/208965.html
Copyright © 2011-2022 走看看