xslt 1.0——4、XPath字符串函数
2011-06-22 17:02
309 查看
xslt 1.0——4、XPath字符串函数
2009-03-16 21:27
xml文档:004.xml
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="004.xsl"?>
<books>
<book>abcd12345</book>
<name>schema</name>
<sub>123</sub>
</books>
XSLT文档:004.xsl
<?xml version="1.0" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" indent="yes"/>
<xsl:template match="/books">
<xsl:value-of select="'book:'"/>
<xsl:value-of select="book"/>
<xsl:value-of select="' '"/>
<xsl:value-of select="'name:'"/>
<xsl:value-of select="name"/>
<xsl:value-of select="' '"/>
<xsl:value-of select="'sub:'"/>
<xsl:value-of select="sub"/>
<xsl:value-of select="' '"/>
<!--把实例代码插入此处-->
</xsl:template>
</xsl:stylesheet>
显示如下:
book:abcd12345 name:schema sub:123
1、连接字符串:concat(string1,string2,string3...)
例:
<xsl:value-of select="'concat(book,-,name):'"/>
<xsl:value-of select="concat(book,'-',name)"/>
<xsl:value-of select="' '"/>
输出显示如下:
concat(book,-,name):abcd12345-schema
2、判断包含关系:contains(string1,string2)
注:判断第二个字符串是否是第一个字符串的一部分。
例:
<xsl:value-of select="'contains(book,name):'"/>
<xsl:value-of select="contains(book,name)"/>
<xsl:value-of select="' '"/>
输出显示如下:
contains(book,name):false
3、格式化空白符:normalize-space(string)
注:将一个字符串的头部和尾部的空白字符删除,如果字符串中间含有连续多个空白字符,将用一个空格代替。
4、判断开头字符串:starts-with(string1,string2)
注:判断第一个字符串是否以第二个字符串开头。
例:
<xsl:value-of select="'starts-with(book,sub):'"/>
<xsl:value-of select="starts-with(book,sub)"/>
<xsl:value-of select="' '"/>
<xsl:value-of select="'starts-with(book,abc):'"/>
<xsl:value-of select="starts-with(book,'abc')"/>
<xsl:value-of select="' '"/>
输出显示如下:
starts-with(book,sub):false
starts-with(book,abc):true
5、返回字符串长度:string-length(string)
注:参数缺省,将返回上下文节点字符串长度。
例:
<xsl:value-of select="'string-length(book):'"/>
<xsl:value-of select="string-length(book)"/>
<xsl:value-of select="' '"/>
输出显示如下:
string-length(book):9
6、截取字符串:substring(string,number,length)
注:string:指定要截取的字符串。
number:指定开始位置。
length:指定截取长度。
例:
<xsl:value-of select="'substring(book,1):'"/>
<xsl:value-of select="substring(book,1)"/>
<xsl:value-of select="' '"/>
<xsl:value-of select="'substring(book,5,9):'"/>
<xsl:value-of select="substring(book,5,9)"/>
<xsl:value-of select="' '"/>
输出显示如下:
substring(book,1):abcd12345
substring(book,5,9):12345
7、向前截取字符串:substring-before(string1,string2)
注:返回第一个字符串中位于第二个字符串之前的部分。
例:
<xsl:value-of select="'substring-before(book,sub):'"/>
<xsl:value-of select="substring-before(book,sub)"/>
<xsl:value-of select="' '"/>
输出显示如下:
substring-before(book,sub):abcd
8、向后截取字符串:substring-after(string1,string2)
注:返回第一个字符串中位于第二个字符串之后的部分。
例:
<xsl:value-of select="'substring-after(book,sub):'"/>
<xsl:value-of select="substring-after(book,sub)"/>
<xsl:value-of select="' '"/>
输出显示如下:
substring-after(book,sub):45
9、替换字符:translate(string,原字符,替换字符)
注:在字符串中,依次查找原字符,如果找到,用替换字符进行替换。
例:
<xsl:value-of select="'translate(book,sub,name):'"/>
<xsl:value-of select="translate(book,sub,name)"/>
<xsl:value-of select="' '"/>
<xsl:value-of select="'translate(book,sub):'"/>
<xsl:value-of select="translate(book,sub,'')"/>
<xsl:value-of select="' '"/>
输出显示如下:
translate(book,sub,name):abcdsch45
translate(book,sub):abcd45
2009-03-16 21:27
xml文档:004.xml
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="004.xsl"?>
<books>
<book>abcd12345</book>
<name>schema</name>
<sub>123</sub>
</books>
XSLT文档:004.xsl
<?xml version="1.0" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" indent="yes"/>
<xsl:template match="/books">
<xsl:value-of select="'book:'"/>
<xsl:value-of select="book"/>
<xsl:value-of select="' '"/>
<xsl:value-of select="'name:'"/>
<xsl:value-of select="name"/>
<xsl:value-of select="' '"/>
<xsl:value-of select="'sub:'"/>
<xsl:value-of select="sub"/>
<xsl:value-of select="' '"/>
<!--把实例代码插入此处-->
</xsl:template>
</xsl:stylesheet>
显示如下:
book:abcd12345 name:schema sub:123
1、连接字符串:concat(string1,string2,string3...)
例:
<xsl:value-of select="'concat(book,-,name):'"/>
<xsl:value-of select="concat(book,'-',name)"/>
<xsl:value-of select="' '"/>
输出显示如下:
concat(book,-,name):abcd12345-schema
2、判断包含关系:contains(string1,string2)
注:判断第二个字符串是否是第一个字符串的一部分。
例:
<xsl:value-of select="'contains(book,name):'"/>
<xsl:value-of select="contains(book,name)"/>
<xsl:value-of select="' '"/>
输出显示如下:
contains(book,name):false
3、格式化空白符:normalize-space(string)
注:将一个字符串的头部和尾部的空白字符删除,如果字符串中间含有连续多个空白字符,将用一个空格代替。
4、判断开头字符串:starts-with(string1,string2)
注:判断第一个字符串是否以第二个字符串开头。
例:
<xsl:value-of select="'starts-with(book,sub):'"/>
<xsl:value-of select="starts-with(book,sub)"/>
<xsl:value-of select="' '"/>
<xsl:value-of select="'starts-with(book,abc):'"/>
<xsl:value-of select="starts-with(book,'abc')"/>
<xsl:value-of select="' '"/>
输出显示如下:
starts-with(book,sub):false
starts-with(book,abc):true
5、返回字符串长度:string-length(string)
注:参数缺省,将返回上下文节点字符串长度。
例:
<xsl:value-of select="'string-length(book):'"/>
<xsl:value-of select="string-length(book)"/>
<xsl:value-of select="' '"/>
输出显示如下:
string-length(book):9
6、截取字符串:substring(string,number,length)
注:string:指定要截取的字符串。
number:指定开始位置。
length:指定截取长度。
例:
<xsl:value-of select="'substring(book,1):'"/>
<xsl:value-of select="substring(book,1)"/>
<xsl:value-of select="' '"/>
<xsl:value-of select="'substring(book,5,9):'"/>
<xsl:value-of select="substring(book,5,9)"/>
<xsl:value-of select="' '"/>
输出显示如下:
substring(book,1):abcd12345
substring(book,5,9):12345
7、向前截取字符串:substring-before(string1,string2)
注:返回第一个字符串中位于第二个字符串之前的部分。
例:
<xsl:value-of select="'substring-before(book,sub):'"/>
<xsl:value-of select="substring-before(book,sub)"/>
<xsl:value-of select="' '"/>
输出显示如下:
substring-before(book,sub):abcd
8、向后截取字符串:substring-after(string1,string2)
注:返回第一个字符串中位于第二个字符串之后的部分。
例:
<xsl:value-of select="'substring-after(book,sub):'"/>
<xsl:value-of select="substring-after(book,sub)"/>
<xsl:value-of select="' '"/>
输出显示如下:
substring-after(book,sub):45
9、替换字符:translate(string,原字符,替换字符)
注:在字符串中,依次查找原字符,如果找到,用替换字符进行替换。
例:
<xsl:value-of select="'translate(book,sub,name):'"/>
<xsl:value-of select="translate(book,sub,name)"/>
<xsl:value-of select="' '"/>
<xsl:value-of select="'translate(book,sub):'"/>
<xsl:value-of select="translate(book,sub,'')"/>
<xsl:value-of select="' '"/>
输出显示如下:
translate(book,sub,name):abcdsch45
translate(book,sub):abcd45
相关文章推荐
- XPath 2.0, XQuery 1.0 和 XSLT 2.0 函数参考
- 最完美的xslt数值函数与字符串函数
- 在xslt 1.0 中取得当前时间
- 使用XML、XSLT和XPath创建可排序、分页、重用的数据显
- XSL XSLT XPath XSL-FO
- <转>在xslt 1.0 中取得当前时间
- XPath可以快速定位到Xml中的节点或者属性。XPath语法很简单,但是强大够用,它也是使用xslt的基础知识。
- xslt 字符串函数
- 执行xpath时提示,需要命名空间管理器或XsltContext。此查询具有前缀、变量或用户定义的函数
- XPath and XSLT (II)
- XML学习之XSLT:二、XPath介绍
- XPath可以快速定位到Xml中的节点或者属性。XPath语法很简单,但是强大够用,它也是使用xslt的基础知识。
- XPath1.0 和 XPath2.0 比较例子
- Xml,XPath,XSLTxue 学习方法
- jaxb jaxp使用xml来生成动态页面 - xml xsd xsl ( xpath xslt ) css 概念入门
- XSLT分析之一:XPath表达式
- 在Ruby中处理XML和XSLT以及XPath的简单教程
- 初探XSL,XSLT,XPath以及其他
- C# WinForm开发系列 - XML/XSLT/XPATH
- XSLT/XSL/XPATH的概念