Compartir a través de


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)

Comentarios

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.

Advertencia

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)

<?xml version='1.0'?>
<?xml-stylesheet type="text/xsl" href="translate.xsl"?>
<xsl:stylesheet version="1.0"
      xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">
   translate("bar","abc","ABC") = 
      <xsl:value-of select='translate("bar","abc","ABC")'/>
   <br/>translate("--aaa--","abc-","ABC") = 
      <xsl:value-of select='translate("--aaa--","abc-","ABC")'/>
</xsl:template>

</xsl:stylesheet>

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

Vea también

Referencia

Referencia de tipos de datos XML