RAT( )

 Devuelve la posición de la última aparición de una subcadena en una cadena dada

Sintaxis

     RAT(<cBúsqueda>, <cDestino>) –> nPosición

Argumentos

 <cBúsqueda> es la cadena de caracteres que se desea buscar.

 <cDestino> es la cadena de caracteres en la que se busca.

Devuelve

RAT() devuelve la posición de <cBúsqueda> en <cDestino>, en forma de valor numérico entero. Si <cBúsqueda> no se encuentra, RAT() devuelve cero.

Descripción

RAT() es una función que devuelve la posición de la última aparición de una subcadena de caracteres en otra cadena . Para ello, examina la cadena de destino empezando por la derecha. RAT() es similar a la función AT(), que devuelve la posición de la primera aparición de una subcadena dentro de otra cadena. También es similar al operador $, que determina si una subcadena está contenida en una cadena.

Tanto la función RAT() como la función AT() se utilizan con SUBSTR(), LEFT() y RIGHT() para extraer subcadenas.

Ejemplos

     ¦  Este ejemplo utiliza RAT() para crear una función, ViaFichero(), que extrae la vía de una especificación de fichero. Si no se especifica una vía, devuelve una cadena nula (“”):

        ? ViaFichero(“C:\DBF\Sales.dbf”)      // Resultado: C:\DBF\

 

        FUNCTION ViaFichero(cFichero)

           LOCAL nPos, cViaFichero

           IF (nPos := RAT(“\”, cFichero)) != 0

              cViaFichero = SUBSTR(cFichero, 1, nPos)

           ELSE

              cViaFichero = “”

           ENDIF

           RETURN cViaFichero

 Ficheros: La biblioteca asociada es EXTEND.LIB.