fn:substring 函数返回字符串的子串。
语法

>>-fn:substring(source-string,start-+---------+-)--------------><
'-,length-'
- source-string
- 要从中检索子串的字符串。
source-string 的数据类型为 xs:string,或者是空序列。
- start
- 子串在 source-string 中的起始字符位置。source-string
的第一个位置为 1。如果 start<=
0,那么 start 设置为 1。xFFFF 以后的代码点使用两位 16 位值(又称为代理对)并且在计数时被当成一个字符。
start
的数据类型为 xs:double。
- length
- 子串的长度(以字符计)。length 的缺省值是 source-string
的长度。如果 start+length-1 大于 source-string 的长度,那么 length 设置为(source-string 的长度)-start+1。xFFFF 以后的代码点使用两位 16 位值(又称为代理对)并且在字符串长度方面计数为一个字符。
length
的数据类型为 xs:double。
返回的值
如果 source-string
并非空序列,那么返回的值是 source-string 的子串,其起始字符位置为
start,并且包含 length 个字符。如果 source-string
是空序列,那么会生成零长度字符串。
示例
以下函数返回起始于字符串“Test literal”的第 6 个字符的 7 个字符。
fn:substring('Test literal',6,7)
返回的值为“literal”。