xslt數值函式與字串函式

2021-06-27 19:28:19 字數 3018 閱讀 3748

** 

任何的程式語言或者是sql語句都有內建的函式或方法,而強大靈活的xslt技術也是如此。熟練掌握xslt的常用函式的用法,xslt的應用將變得如此輕鬆,你會發現xslt比想象中還要牛!以下是xslt數值的函式與xslt字串函式的說明與參考示例。

1、xslt數值的函式:

(1)fn:number(arg)   返回引數的數值。引數可以是布林值、字串或節點集。

示例:返回 100

(2)fn:abs(num) 返回引數的絕對值。

示例:返回 3.14

(3)fn:ceiling(num) 返回大於 num 引數的最小整數。(注:這裡有些文章是寫錯了的,將大於寫成了小於)

示例:返回 4

(4)fn:floor(num) 返回小於等於 num 引數的最大整數。

示例:返回 3

(5)fn:round(num) 把 num 引數捨入為最接近的整數。

示例:返回 3

(6)round-half-to-even(num)

示例:返回 0

示例:返回 2

示例:返回 2

2、xslt字串函式

(1)fn:string(arg) 返回引數的字串值。引數可以是數字、邏輯值或節點集。

示例:返回 "314"

(2)fn:codepoints-to-string(int,int,...) 根據**點序列返回字串。

示例:返回 'thérèse'

(3)fn:string-to-codepoints(string) 根據字串返回**點序列。

示例:返回 84, 104, 233, 114, 232, 115, 101

(4)fn:codepoint-equal(comp1,comp2) 根據 unicode **點對照,如果 comp1 的值等於 comp2 的值,則返回 true。(否則返回 false。

示例:返回 true

fn:compare(comp1,comp2)

fn:compare(comp1,comp2,collation) 如果 comp1 小於 comp2,則返回 -1。如果 comp1 等於 comp2,則返回 0。如果 comp1 大於 comp2,則返回 1。(根據所用的對照規則)。

示例:返回 0

(5)fn:concat(string,string,...) 返回字串的拼接。

示例:返回 'xpath is fun!'

(6)fn:string-join((string,string,...),sep) 使用 sep 引數作為分隔符,來返回 string 引數拼接後的字串。

示例:返回 'www.mobansheji.com'

(7)fn:substring(string,start,len)

fn:substring(string,start) 返回從start位置開始的指定長度的子字串。第乙個字元的下標是 1。如果省略 len 引數,則返回從位置 start 到字串末尾的子字串。

示例:返回 'xml'

返回 'baidu.com'

(8)fn:string-length(string) fn:string-length() 返回指定字串的長度。如果沒有 string 引數,則返回當前節點的字串值的長度。

示例:返回 8

(9)fn:normalize-space(string) fn:normalize-space() 刪除指定字串的開頭和結尾的空白,並把內部的所有空白序列替換為乙個,然後返回結果。如果沒有 string 引數,則處理當前節點。。

示例:返回 'what a pity!'

(10)fn:upper-case(string) 把 string 引數轉換為大寫。

示例:返回 'the xpath'

(11)fn:lower-case(string) 把 string 引數轉換為小寫。

示例:返回 'the xml'

(12)fn:translate(string1,string2,string3) 把 string1 中的 string2 替換為 string3。

示例:返回 'do you know xslt and xpath?'

示例:返回 '12:45'

(13)fn:escape-uri(stringuri,esc-res)

示例:", true())"/> 返回 "http%3a%2f%2fexample.com%2ftest#car"

示例:", false())"/> 返回 ""

(14)fn:contains(string1,string2) 如果 string1 包含 string2,則返回 true,否則返回 false。

示例:返回 true

(15)fn:starts-with(string1,string2) 如果 string1 以 string2 開始,則返回 true,否則返回 false。

示例:返回 true

(16)fn:ends-with(string1,string2) 如果 string1 以 string2 結尾,則返回 true,否則返回 false。

示例:返回 false

(17)fn:substring-before(string1,string2) 返回 string2 在 string1 中出現之前的子字串。

示例:返回 'xml

(18)fn:substring-after(string1,string2) 返回 string2 在 string1 中出現之後的子字串。

示例:返回 'bbb'

(19)fn:matches(string,pattern) 如果 string 引數匹配指定的模式,則返回 true,否則返回 false。

示例:返回 true

(20)fn:replace(string,pattern,replace) 把指定的模式替換為 replace 引數,並返回結果。

示例:返回 'the password is admin***'

(21)fn:tokenize(string,pattern)

示例:返回 ("xpath", "is", "fun")

C 字串與數值型別的轉換函式

atoi 將字串轉換成整型數 相關函式 atof,atol,atrtod,strtol,strtoul 表頭檔案 include 定義函式 int atoi const char nptr 函式說明 atoi 會掃瞄引數nptr字串,跳過前面的空格字元,直到遇上數字或正負符號才開始做轉換,而再遇到非...

字元函式和字串函式

size t strlen const char str 模擬實現strlen 字串長度 include include size t mystrlen const char str return count int main 字串拷貝 char strcpy char destination,co...

字元函式和字串函式

求字串的長度 乙個帶 0 的字元陣列才叫字串 strlen函式 size t strlen const char str strlen函式返回的是不包含 0 的字元個數 引數指向的字串必須以 0 結束 函式的返回值為size t,是無符號的 unsigned int 函式的模擬實現 方法1 計數器方...