Función translate
Devuelve la cadena del primer argumento que incluye caracteres de la cadena del segundo argumento sustituidos por los caracteres correspondientes de la cadena del tercer argumento.
string translate(string, string, string)
Notas
Esta función proporciona una asignación de caracteres en el primer argumento. Los argumentos segundo y tercero describen el esquema de la asignación.
La siguiente función devuelve "BAr":
translate("bar","abc","ABC")
Si hay algún carácter en la segunda cadena de argumentos sin carácter en la posición correspondiente en la tercera cadena de argumentos (puesto que la segunda cadena de argumentos es mayor que la tercera cadena de argumentos), las apariciones de dicho carácter en la primera cadena de argumentos se eliminan.
La siguiente llamada de función devuelve "AAA":
translate("--aaa--","abc-","ABC")
Si un carácter aparece más de una vez en la segunda cadena de argumentos, la primera aparición determina el carácter de sustitución. Si la tercera cadena de argumentos es mayor que la segunda cadena de argumentos, los caracteres en exceso se ignoran.
Si un argumento no es del tipo cadena, se convierte primero en una cadena utilizando la función string() y a continuación se evalúa el resultado de dicha conversión.
Precaución: |
---|
Las conversiones de cadenas para conjuntos de nodos que se pasan a esta función como argumentos pueden arrojar resultados inesperados.Para obtener más información, vea Función string. |
La función distingue mayúsculas de minúsculas.
Ejemplo
En este ejemplo se muestran las expresiones translate()
anteriores.
Archivo XML
Ninguno; el archivo XSLT se llama a sí mismo.
Archivo XSLT (translate.xsl)
Resultado con formato
translate("bar","abc","ABC") = BAr translate("--aaa--","abc-","ABC") = AAA
Resultado del procesador
<?xml version="1.0" encoding="UTF-16"?> translate("bar","abc","ABC") = BAr<br />translate("--aaa--","abc-","ABC") = AAA