http://www.cnblogs.com/guoxu/articles/1744007.html

任何的编程语言或者是SQL语句都有内置的函数或方法,而强大灵活的xslt技术也是如此。熟练掌握XSLT的常用函数的用法,XSLT的应用将变得如此轻松,你会发现XSLT比想象中还要牛!以下是xslt数值的函数与xslt字符串函数的说明与参考示例。

1、xslt数值的函数:
(1)fn:number(arg)   返回参数的数值。参数可以是布尔值、字符串或节点集。
     示例:<xsl:value-of select="number('100')"/> 返回 100

(2)fn:abs(num) 返回参数的绝对值。
     示例:<xsl:value-of select="number(-3.14)"/> 返回 3.14

(3)fn:ceiling(num) 返回大于 num 参数的最小整数。(注:这里有些文章是写错了的,将大于写成了小于)
     示例:<xsl:value-of select="ceiling(3.14)"/> 返回 4

(4)fn:floor(num) 返回小于等于 num 参数的最大整数。
     示例:<xsl:value-of select="floor(3.14)"/> 返回 3

(5)fn:round(num) 把 num 参数舍入为最接近的整数。
     示例:<xsl:value-of select="round(3.14)"/> 返回 3

(6)round-half-to-even(num) 
     示例:<xsl:value-of select="round-half-to-even(0.5)"/> 返回 0
     示例:<xsl:value-of select="round-half-to-even(1.5)"/> 返回 2
     示例:<xsl:value-of select="round-half-to-even(2.5)"/> 返回 2

2、xslt字符串函数
(1)fn:string(arg) 返回参数的字符串值。参数可以是数字、逻辑值或节点集。
     示例:<xsl:value-of select="string(314)"/> 返回 "314"

(2)fn:codepoints-to-string(int,int,...) 根据代码点序列返回字符串。
     示例:<xsl:value-of select="codepoints-to-string(84, 104, 233, 114, 232, 115, 101)"/> 返回 'Thérèse'

(3)fn:string-to-codepoints(string) 根据字符串返回代码点序列。
     示例:<xsl:value-of select="string-to-codepoints("Thérèse")"/> 返回 84, 104, 233, 114, 232, 115, 101

(4)fn:codepoint-equal(comp1,comp2) 根据 Unicode 代码点对照,如果 comp1 的值等于 comp2 的值,则返回 true。(http://www.w3.org/2005/02/xpath-functions/collation/codepoint),否则返回 false。
     示例:<xsl:value-of select="compare('ghi', 'ghi')"/> 返回 true

fn:compare(comp1,comp2) 
     fn:compare(comp1,comp2,collation) 如果 comp1 小于 comp2,则返回 -1。如果 comp1 等于 comp2,则返回 0。如果 comp1 大于 comp2,则返回 1。(根据所用的对照规则)。
     示例:<xsl:value-of select="compare('ghi', 'ghi')"/> 返回 0

(5)fn:concat(string,string,...) 返回字符串的拼接。
     示例:<xsl:value-of select="concat('XPath ','is ','FUN!')"/> 返回 'XPath is FUN!'

(6)fn:string-join((string,string,...),sep) 使用 sep 参数作为分隔符,来返回 string 参数拼接后的字符串。
     示例:<xsl:value-of select="string-join(('Www.', 'mobansheji', '.', 'com'), ' ')"/> 返回 'www.mobansheji.com'

(7)fn:substring(string,start,len) 
     fn:substring(string,start) 返回从start位置开始的指定长度的子字符串。第一个字符的下标是 1。如果省略 len 参数,则返回从位置 start 到字符串末尾的子字符串。
     示例:<xsl:value-of select="substring('www.mobansheji.com',1,4)"/> 返回 'www.'
           <xsl:value-of select="substring('www.mobansheji.com',4)"/> 返回 'mobansheji.com'

(8)fn:string-length(string) fn:string-length() 返回指定字符串的长度。如果没有 string 参数,则返回当前节点的字符串值的长度。
     示例:<xsl:value-of select="substring('www.mobansheji.com')"/> 返回 18

(9)fn:normalize-space(string) fn:normalize-space() 删除指定字符串的开头和结尾的空白,并把内部的所有空白序列替换为一个,然后返回结果。如果没有 string 参数,则处理当前节点。。
     示例:<xsl:value-of select="normalize-space(' www.    mobansheji . com ')"/> 返回 'www.mobansheji.com'

(10)fn:upper-case(string) 把 string 参数转换为大写。
     示例:<xsl:value-of select="upper-case('The Xpath')"/> 返回 'THE XPATH'

(11)fn:lower-case(string) 把 string 参数转换为小写。
     示例:<xsl:value-of select="lower-case('The XML')"/> 返回 'the xml'

(12)fn:translate(string1,string2,string3) 把 string1 中的 string2 替换为 string3。
     示例:<xsl:value-of select="translate('Do you know xml and xpath?','xml','xslt')"/> 返回 'Do you know xslt and xpath?'
     示例:<xsl:value-of select="translate('12:30','03','54')"/> 返回 '12:45'

(13)fn:escape-uri(stringURI,esc-res)
     示例:<xsl:value-of select="escape-uri("http://example.com/test#car", true())"/> 返回 "http%3A%2F%2Fexample.com%2Ftest#car"
     示例:<xsl:value-of select="escape-uri("http://example.com/test#car", false())"/> 返回 "http://example.com/test#car"

(14)fn:contains(string1,string2) 如果 string1 包含 string2,则返回 true,否则返回 false。
     示例:<xsl:value-of select="contains('XML','XM')"/> 返回 true

(15)fn:starts-with(string1,string2) 如果 string1 以 string2 开始,则返回 true,否则返回 false。
     示例:<xsl:value-of select="starts-with('XML','X')"/> 返回 true

(16)fn:ends-with(string1,string2) 如果 string1 以 string2 结尾,则返回 true,否则返回 false。
     示例:<xsl:value-of select="ends-with('XML','X')"/> 返回 false

(17)fn:substring-before(string1,string2) 返回 string2 在 string1 中出现之前的子字符串。
     示例:<xsl:value-of select="substring-before('www.mobansheji.com','.')"/> 返回 'www'

(18)fn:substring-after(string1,string2) 返回 string2 在 string1 中出现之后的子字符串。
     示例:<xsl:value-of select="substring-before('www.mobansheji.com','.')"/> 返回 'mobansheji.com'

(19)fn:matches(string,pattern) 如果 string 参数匹配指定的模式,则返回 true,否则返回 false。
     示例:<xsl:value-of select="matches("Merano", "ran")"/> 返回 true

(20)fn:replace(string,pattern,replace) 把指定的模式替换为 replace 参数,并返回结果。
     示例:<xsl:value-of select="replace("The password is admin888", "8", "*")"/> 返回 'The password is admin***'

(21)fn:tokenize(string,pattern)
     示例:<xsl:value-of select="tokenize("XPath is fun", "\s+")"/> 返回 ("XPath", "is", "fun")

通过以上xslt数值的函数与xslt字符串函数,我想各位朋友都已经知道了如何用xslt来处理各种数值和字符串了。在实际的应用中可能比示例代码要复杂得多,只有熟练掌握才能应用自如! 希望多重复的看几遍!

format-number()

最完美的xslt数值函数与字符串函数(转)的更多相关文章

  1. XSLT函数集合:数值函数、字符串函、节点集函数和布尔函数

    任何的编程语言或者是SQL语句都有内置的函数或方法,而强大灵活的xslt技术也是如此.熟练掌握XSLT的常用函数的用法,XSLT的应用将变得如此轻松,你会发现XSLT比想象中还要牛!以下是xslt数值 ...

  2. Oracle内置函数:时间函数,转换函数,字符串函数,数值函数,替换函数

    dual单行单列的隐藏表,看不见 但是可以用,经常用来调内置函数.不用新建表 时间函数 sysdate 系统当前时间 add_months 作用:对日期的月份进行加减 写法:add_months(日期 ...

  3. ORACLE常用数值函数、转换函数、字符串函数介绍

    ORACLE常用数值函数.转换函数.字符串函数介绍. 数值函数: abs(m) m的绝对值 mod(m,n) m被n除后的余数 power(m,n) m的n次方 round(m[,n]) m四舍五入至 ...

  4. xslt数值的函数与xslt字符串函数

    以下是xslt数值的函数与xslt字符串函数的说明与参考示例. 1.xslt数值的函数:(1)fn:number(arg) 返回参数的数值.参数可以是布尔值.字符串或节点集. 示例:<xsl:v ...

  5. [学习笔记] Oracle字符串函数、日期函数、数值函数、转换函数、聚合函数

    函数 单行函数:对一行数据进行操作的函数,如字符串函数.数值函数.转换函数.日期函数等. 聚合函数:同时对多行数据进行操作,如求和函数等. 字符串函数 函数 说明 ASCII(X) 求字符X的ASCI ...

  6. XPath函数——字符串函数(转载)

    本文是转载的,原文网址:http://www.cnblogs.com/zhaozhan/archive/2010/01/17/1650242.html 字符串函数主要用来处理字符串.字符串函数主要包括 ...

  7. xslt中的常用函数

    在我们制作标签的时候经常要使用到一些xslt的知识,以下整理了常用的xslt函数供大家使用. 常用字符串函数: contains('Welcome','e'):字符串包含,包含:true,不包含:fa ...

  8. 【HIVE】(3)联合查询join、时间戳函数、字符串函数

    数据 t_join1.txt 1,a,1 2,b,2 3,c,4 t_join2.txt 1,2a 2,2b 3,2c 建表.导入: create table t_join1(id int, name ...

  9. Oracle之单行函数(字符串函数/数字函数/转换函数/日期函数/通用函数)

    虚拟表DUAL介绍: dual是一张虚拟表,只有一行一列,用来构成select的语法规则. Oracle的查询中,必须使用"select 列- from 表"的完整语法,当查询单行 ...

随机推荐

  1. WCF入门教程二[WCF应用的通信过程]

    一.概述 WCF能够建立一个跨平台的安全.可信赖.事务性的解决方案,是一个WebService,.Net Remoting,Enterprise Service,WSE,MSMQ的并集,有一副很经典的 ...

  2. ibm硬件知识点

    ibm http://www-03.ibm.com/systems/storage/disk/storwize_v3700/index.html Current software level: Ver ...

  3. linux包之procps之sysctl命令

    概述 [root@localhost ~]# rpm -qf /sbin/sysctlprocps-3.2.8-25.el6.x86_64 我们常常在 Linux 的 /proc/sys 目录下,手动 ...

  4. mac版photoshop滤镜库报错解法

    http://bbs.pcbeta.com/viewthread-1556878-1-1.html

  5. redis配置文件解析

    Redis是一个简单高效的内存KV数据库,基本上下载源码make install,编译完成,然后进入src目录运行redis-server即可运行.就是因为这么简单往往有朋友直接运行,将没有密码的re ...

  6. 解决504 Gateway Time-out(nginx)

    504 Gateway Time-out问题常见于使用nginx作为web server的服务器的网站 我遇到这个问题是在需要插入一万多条数据时候遇到的 一般看来, 这种情况可能是由于nginx默认的 ...

  7. 从一次异常中浅谈Hibernate的flush机制

    摘自http://www.niwozhi.net/demo_c70_i1482.html http://blog.itpub.net/1586/viewspace-829613/ 这是在一次事务提交时 ...

  8. ASIHttpRequest addRequestHeader的处理

    我现在用到了ASIHttpRequest来读取数据,这时候我发现里面的头在很多时候都是一样的.如用户的令牌,设备类型,ios版本,软件版本等 [self.request addRequestHeade ...

  9. phonegap 2.7 ios配置安装详细教程(2.9通用)

    原地址:http://www.cnblogs.com/yansi/archive/2013/05/14/3078222.html 在移动开发日益激烈的情况下我也不得不硬着头皮尝试下新鲜的html5的a ...

  10. [转]使用eclipse+pydev远程调试OpenStack

    作者:张华  发表于:2014-01-17版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本版权声明 ( http://blog.csdn.net/quqi99 ) 1, ...