XPath 字符串函数
XPath字符串函数
XPath字符串函数列表:
功能 |
说明 |
starts-with(字符串1,字符串2) |
当第一个字符串以第二个字符串开头时,它返回true。 |
包含(字符串1,字符串2) |
当第一个字符串包含第二个字符串时,它返回true。 |
substring(字符串,偏移量,长度?) |
它返回字符串的一部分。该部分以偏移量开始,直到提供的长度。 |
substring-before(string1,string2) |
它返回string1第一次出现的string2之前的部分。 |
substring-after(string1,string2) |
它在第一次出现string2之后返回string1的一部分。 |
string-length(string) |
它以字符为单位返回字符串的长度。 |
normalize-space(string) |
它会修剪字符串中的前导和尾随空格。 |
translate(string1,string2,string3) |
在将string2中的所有匹配字符替换为string3中的字符之后,它返回string1、 |
concat(string1,string2,...) |
它用于连接所有字符串。 |
format-number(number1,string1,string2) |
在将string1作为格式字符串后,它返回number1的格式版本。 String2是可选的语言环境字符串。 |
XPath字符串函数示例
我们以一个示例为例,通过遍历每个员工来创建具有其名称和名称长度的
元素表。将名字和姓氏连接起来后,将计算出雇员姓名的长度,然后显示雇员详细信息。
Example.xml
<?xml version = "1.0"?>
<?xml-stylesheet type = "text/xsl" href = "employee.xsl"?>
<class>
<employee id = "001">
<firstname>Abhiram</firstname>
<lastname>Kushwaha</lastname>
<nickname>Manoj</nickname>
<salary>15000</salary>
</employee>
<employee id = "002">
<firstname>Akash</firstname>
<lastname>Singh</lastname>
<nickname>Bunty</nickname>
<salary>25000</salary>
</employee>
<employee id = "003">
<firstname>Brijesh</firstname>
<lastname>Kaushik</lastname>
<nickname>Ballu</nickname>
<salary>20000</salary>
</employee>
<employee id = "004">
<firstname>Zoya</firstname>
<lastname>Mansoori</lastname>
<nickname>Sonam</nickname>
<salary>30000</salary>
</employee>
</class>
Example.xsl
<?xml version = "1.0" encoding = "UTF-8"?>
<xsl:stylesheet version = "1.0"
xmlns:xsl = "http://www.w3.org/1999/XSL/Transform">
<xsl:template match = "/">
<html>
<body>
<h2>Employee</h2>
<table border = "1">
<tr bgcolor = "pink">
<th>Name</th>
<th>Length of Name</th>
</tr>
<xsl:for-each select = "class/employee">
<tr>
<td><xsl:value-of select = "concat(firstname,' ',lastname)"/></td>
<td><xsl:value-of select = "string-length(concat(firstname,' ',lastname))"/></td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
输出:
