问题
:在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中进行字符串替换是一项常见且实用的功能。本文将详细介绍如何通过XSLT实现字符串的替换,并重点探讨两种常用的方法:使用`ms:script`(仅限于Microsoft的XML解析器)以及纯XSL模板。 ### XSL中的字符串替换 ...
在XML与XSL技术的结合应用中,对字符串进行分割处理是一项常见的需求,尤其是在需要将一个包含多个值的属性或元素拆分为多个单独元素时。本文将深入探讨如何利用XSLT中的`substring-before()`和`substring-after()`...
本篇文章将深入探讨“xsl递归解析xml”的概念,以及如何在实际应用中使用这两种技术。 首先,XML的主要特点是结构化,它通过自定义标签来组织数据,使得数据具有良好的可读性和可维护性。XML文档通常包含元素、属性...
在实际操作中,使用 grep 命令搜索多个字符串可以用于各种场景,例如检查操作系统是否开启虚拟化功能。使用基本正则表达式搜索多个条件,语法如下:`[root@localhost ~]# grep 'vmx\|svm' /proc/cpuinfo`。扩展模式...
在"XSL分割字符串输出"这个主题中,我们关注的是如何使用XSLT处理字符串并将其分割成多个部分。在XSLT中,可以使用`substring-before()`和`substring-after()`函数来提取字符串的一部分,或者使用`tokenize()`函数来...
XSL函数是XSLT(XSL Transformations)的一部分,它们用于处理XML数据,进行计算、字符串操作、逻辑判断等任务。例如,`normalize-space()` 函数用于去除字符串两端的空白并合并连续空格;`format-number()` 用于...
在XSL中,我们可以定义模板来匹配XML元素并决定它们如何被呈现。 XPath是XSL转换中的关键工具,它允许我们根据节点路径来选择XML文档中的特定部分。例如,`/root/element` 将选择根元素下的所有"element"元素。...
以下我们将详细探讨如何利用XSL中的各种函数为XML显示提供灵活性。 1. **字符串处理函数**: - `string()`:将值转化为字符串。 - `concat()`:连接多个字符串。 - `substring()`:提取字符串的一部分。 - `...
1. **XSL元素**:XSL元素是转换的基础,比如`<xsl:template>`用于定义匹配XML元素的规则,`<xsl:apply-templates>`用于在处理过程中递归地应用模板,`<xsl:value-of>`用于获取元素的文本内容。 2. **模式匹配**:在...
XPath是XSL中的查询语言,它允许开发者通过路径表达式来选取XML文档中的节点。XPath函数参考.doc可能包含了XPath的各种内置函数,如字符串函数、数值函数、布尔函数、节点集函数等,这些函数能够帮助处理和操作XML...
- **XSL简明教程(3)在客户端的实现.mht**:介绍如何在浏览器环境中实现XSL转换,让XML数据在Web页面上呈现。 9. **XSL学习指南** - **XSL_tour.CHM**:可能是一个完整的XSL参考手册,包含XSL的全面介绍和详细指南...
7. **函数库(Function Library)**:XSLT提供了丰富的内置函数库,可以进行字符串处理、数值计算、节点集合操作等。 在最新的xsl示例中,你可能找到这些概念的实际应用,包括如何创建和应用模板,如何选择和合并...
根据文件【标题】和【描述】内容,《完美的xslt数值函数与字符串函数.pdf》主要介绍了XSLT(Extensible Stylesheet Language Transformations)中的数值函数和字符串函数。这些函数在XML文档转换成其他格式时起着...
本篇文章将详细探讨如何利用XML和XSL来自动生成菜单,以及它们在实际应用中的作用。 XML是一种标记语言,它允许我们以结构化的方式存储数据。在自动生成菜单的场景中,我们可以用XML定义菜单的层次结构,例如: ``...
以下是对"在XSL中使用数组例子"这一主题的详细解释。 1. **数组概念的模拟** 在XSL中,我们不能像在其他编程语言中那样声明一个数组并初始化它。然而,我们可以通过创建一系列的变量或模板来模拟数组。每个变量...
本章节我们将探讨如何利用XSL中的`order-by`属性来对XML文档进行排序,这在实际应用中非常有用,尤其是在需要根据特定字段(如艺术家名称)对数据进行升序或降序排列时。 #### XML到HTML的转换及索引建立 XML是一...
在实际应用中,你可能还会遇到条件判断(`<xsl:if>`和`<xsl:choose>`)、循环(`<xsl:for-each>`)、变量(`<xsl:variable>`和`<xsl:param>`)以及导入和包含其他样式表(`<xsl:import>`和`<xsl:include>`)等功能。...
- **XPath**是XSL中的一个重要组成部分,用于在XML文档中进行路径表达式的定义,从而帮助我们查找或选择节点和值。 #### 二、XPath路径表达式 - **LocationPaths**:表示XML文档中节点的位置路径。 - **Optional ...
使用这个jar包,开发者可以在JSP页面中创建一个Transformer对象,加载XML源文件和XSL样式表,然后调用transform方法进行转换。转换的结果通常是一个字符串,可以被写入到HTTP响应中,或者存储到文件系统中。 以下是...