translate
translate 函式會評估一個字串以及一組要翻譯的字元,並返回翻譯後的字串。
語法
translate(string, abc, XYZ)
引數
返回值
翻譯後的字串。
描述
對於 string 中的每個字元,如果 abc 包含該字元,則將其替換為 XYZ 中相同索引處的字元。如果 abc 不包含該字元,則保持不變。
- 如果
abc的長度大於XYZ,則abc末尾的額外字元將被對映為空字串(即,它們將從源字串中刪除)。 - 如果
XYZ包含的字元多於abc,則忽略多餘的字元。 - 如果一個字元在
abc中出現多次,則第一次出現決定替換字元。
translate() 是一個逐字元替換函式,而不是正則表示式或字串替換函式。abc 和 XYZ 字串代表字元密碼,而不是子字串。這意味著,如果你遇到上述任何一種情況,你可能正在錯誤地使用該方法(除了可能使用更長的 abc 來刪除某些字元)。
像這樣的替換不會像你期望的那樣輸出 The quick red fox;相反,結果是 The quick red fdx。
xml
<xsl:value-of select="translate('The quick brown fox', 'brown', 'red')" />
示例
使用 translate() 進行大小寫轉換
XPath 指出,translate 函式並不是所有語言中大小寫轉換的充分解決方案。未來版本的 XPath 可能會提供額外的函式用於大小寫轉換。
然而,這是我們目前最接近能夠將字串轉換為大寫或小寫的函式。
xml
<xsl:value-of select="translate('The quick brown fox.', 'abcdefghijklmnopqrstuvwxyz', 'ABCDEFGHIJKLMNOPQRSTUVWXYZ')" />
輸出
THE QUICK BROWN FOX.
規範
Gecko 支援情況
支援。