substring 函数

返回第一个参数中从第二个参数指定的位置开始、第三个参数指定的长度的子字符串。

string substring(string, number, number?)

备注

该字符串中的每个字符都被视为具有一个数字位置:第一个字符的位置是 1,第二个字符的位置是 2,以此类推。

如果未指定第三个参数,将返回从第二个参数指定的位置开始直到字符串结尾的子字符串。

如果参数不是字符串类型,将先使用 string() 函数转换为字符串,然后计算该转换的结果。

ms256054.Caution(zh-cn,VS.100).gif警告:
作为参数传递给此函数的节点集的字符串转换可能会产生意外的结果。有关更多信息,请参见 string 函数

此函数区分大小写。

示例

以下函数调用返回“234”:

substring("12345",2,3)

以下函数调用返回“2345”:

substring("12345",2)

返回的子字符串包含如下字符:字符位置大于或等于第二个参数的舍入值,且如果指定了第三个参数,小于第二个和第三个参数的舍入值之和。 上面使用的比较和加法遵循 IEEE 754 标准规则;如同调用 round() 函数一样进行舍入。

下列示例阐释异常情况。

substring("12345", 1.5, 2.6) 返回“234

substring("12345", 0, 3) 返回“12

substring("12345", 0 div 0, 3) 返回""

substring("12345", 1, 0 div 0) 返回""

substring("12345", -42, 1 div 0) 返回"12345"

substring("12345", -1 div 0, 1 div 0) 返回""

此示例演示前一个 substring() 表达式。

XML 文件

无;XSLT 文件调用自身。

XSLT 文件 (substring.xsl)

格式化输出

substring("12345",2,3) = 234 substring("12345",2) = 2345 substring("12345", 1.5, 2.6) = 234 substring("12345", 0, 3) = 12 substring("12345", 0 div 0, 3) = substring("12345", 1, 0 div 0) = substring("12345", -42, 1 div 0) = 12345 substring("12345", -1 div 0, 1 div 0) =

处理器输出

<?xml version="1.0" ?> substring("12345",2,3) = 234<br /> substring("12345",2) = 2345<br /> substring("12345", 1.5, 2.6) = 234<br /> substring("12345", 0, 3) = 12<br /> substring("12345", 0 div 0, 3) = <br /> substring("12345", 1, 0 div 0) = <br /> substring("12345", -42, 1 div 0) = 12345<br /> substring("12345", -1 div 0, 1 div 0) =

另请参见

参考

XML 数据类型引用