`

在XSL中利用递归,进行字符串切割

    博客分类:
  • Xml
阅读更多

问题 :在XSL解析XML的时候,在XML中有这样一个字符串2.16.840.1.113883.6.1数据 ,需要根据最后一个“.”后面的数字来进行输出格式化。当等于1的时候,输出门诊;为2的时候,输出急诊;为3的时候,输出住院。

 

思路 :因为最后“."前面有多少数据值不清楚,怎样才能获得那个数值呢?所以利用递归的方法,利用substring-after(var,pattern) function, 循环的去除最后一个“."前面的数据值,直到没有“."了之后,则表明达到最后一个”."后面的数据了

 

程式

<xsl:template name="showStatus">
    	 <xsl:param name="status"/>
         <xsl:variable name="newStatus" select="substring-after($status,'.')"/>
         <xsl:choose>
            <!-- 当截取之后的字符串中,依然含有. 的时候,递归处理 -->     
            <xsl:when test="contains($newStatus,'.')">
                 <xsl:call-template name="showStatus">
                    <xsl:with-param name="status" select="$newStatus" />
                 </xsl:call-template> 
            </xsl:when>
            <xsl:otherwise>
              <xsl:choose>
                 <xsl:when test="$newStatus = '1'">
                   <xsl:text>門診</xsl:text>
                 </xsl:when>
                 <xsl:when test="$newStatus = '2'">
                    <xsl:text>急診</xsl:text>
                 </xsl:when>
                 <xsl:when test="$newStatus = '3'">
                    <xsl:text>住院</xsl:text>
                 </xsl:when>
              </xsl:choose>  
            </xsl:otherwise>
         </xsl:choose> 
</xsl:template>
 

 

分享到:
评论

相关推荐

    XSL中进行字符串替换

    稍熟悉XPATH的人都知道,在XSL中使用translate函数可以将一个字符串进行逐字符替换。但是,如果要替换一个子字符串为另一个子字符串,对XPATH1.0而言,用translate就有点力不从心了。 一般来讲,在XSL中进行字符串...

    xml+xsl中分割字符

    xml+xsl中分割字符

    xsl递归解晰xml

    NULL 博文链接:https://bbjava.iteye.com/blog/1262080

    使用 grep 命令搜索多个字符串.doc

    grep是一个强大的命令行工具,它允许在一个或多个文件中搜索与正则表达式匹配的行,并将匹配的结果写入标准输出。

    xsl官方文档

    xsl分割字符串输出和xsl官方文档

    XSL 中文教程大全

    自己收集的XSL中文教程大全, 比较多, 比较适合初学者

    xml_popup.rar_javascript xml_xml xsl_xsl_xsl javascript

    xml+xsl分页原理:在xsl中,遍历节点的时候,可以获取当前节点的位置,而且还能限制显示特定位置的节点,例如有18条记录,可以在xsl中设置只显示第1-6条,也可以设置只显示第7-12条,再配合客户端脚本,就可以动态...

    在XSL使用数组例子

    在XSL使用数组例子 在XSL使用数组例子 在XSL使用数组例子

    利用XSL和ASP实现XML文档在线编辑

    本文通过一个详细的例子,来阐述了在线编辑XML文档数据的方法。...本文的例子就是利用XSL样式单把XML文档显示出来,供用户进行编辑,然后再把编辑后的数据提交到服务器,在服务器端进行数据的更新。

    Struts2 国际化字符串 拦截器

    文件的国际化字符串中使用OGNL,格式为${表达式},例如: validation.required=${getText(fileName)} is required 2. 使用java.text.MessageFormat中的字符串格式,格式为{ 参数序号(从0开始), 格式类形(number |...

    网页XSL基础教程,支持XML和XSL

    一个跨浏览器的解决方法 ...在服务器上进行XSL转换正在成为未来Internet信息服务器工作任务的一个主要部 分,同时我们将看到专用浏览器市场的发展,如:Braille、有声网络、网络打印 机、手持PC、移动电话等。

    XSL开发基础参考资料

    XSL函数大全 XSL元素大全 常用的XPATH手册 XSL知识速查

    XSL-FO 教程

    XSL-FO 简介 XSL-FO 的简介。包括其概念和作用。 XSL-FO 文档 本章将解 XSL-FO 文档的结构。 XSL-FO 区域 本章讲解 XSL-FO 的区域模型(area model)。 XSL-FO 输出 本章讲解 XSL-FO 文档的输出元素(Output ...

    用 xsl 中的各种函数为 XML 显示提供灵活性

    用 xsl 中的各种函数为 XML 显示提供灵活性

    XSL速查手册中文版

    XSL速查XSL速查XSL速查XSL速查XSL速查XSL速查

    OMML2MML.XSL

    使用java解析word文件里得数学公式时,会用到该文件.可以将公式的格式转为目标格式. Mathml (MML) ...Office在安装目录中提供了将OMML转为MathML的xsl工具:MML2OMML.XSL 注:试用前,请先打开文件并阅读第一行.

    在xml中使用CSS和XSL

    XSL实例 博文链接:https://it-ming-java.iteye.com/blog/1703464

    跟我学XSL

    一本非常好的XSL入门教程, 分成以下几大单元 1....测试模式 5.XSL中的choose 6.运算符,关系与逻辑运算符,特殊字符等 7.XSL函数之一 8.脚本与XSL的结合及应用 9.XSL函数之二(DOM中对象的方法)

    XslTransform.Transform将结果输出到字符串里的方法

    XslTransform.Transform 方法将结果输出到字符串里有2中办法: 通过System.IO.MemoryStream类来实现。 通过System.Text.StringBuilder类来实现。 下面是具体的实现方法: 代码如下:System.Xml.Xsl.XslTransform...

Global site tag (gtag.js) - Google Analytics