Función InstrRev

Devuelve la posición de la aparición de una cadena en otra desde el final de la cadena.

Sintaxis

InStrRev(string1, string2[, start[, compare]])

Argumentos:

  • string1: necesario. Expresión de cadena que se busca.
  • string2: necesario. Expresión de cadena que se busca.
  • Start: opcional. Expresión numérica que define la posición inicial de cada búsqueda. Si se omite, se utiliza -1, lo que significa que la búsqueda comienza en la posición del último carácter. Si el inicio contiene un valor nulo, se produce un error.
  • Compare: opcional. Valor numérico que indica el tipo de comparación que se debe utilizar al evaluar las subcadenas. Si se omite, se realiza una comparación binaria. Consulte la sección Configuración para ver los valores.
  • Configuración: el argumento compare puede tener los siguientes valores:

    Tabla 11-17 Constantes de comparación y descripciones

    Constante Valor Descripción
    vbBinaryCompare 0 Realiza una comparación binaria.
    vbTextCompare 1 Realiza una comparación textual.

Valor devuelto

La función InStrRev devuelve los siguientes valores:

Tabla 11-18 Valores de retorno de la función InStrRev

Si InStrRev devuelve
string1 es de longitud cero 0
string2 es de longitud cero Inicio
No se encuentra string2 0
string2 se encuentra en string1 Posición en la que se encuentra la coincidencia.
inicio > Len(string2) 0

Observaciones

En los siguientes ejemplos se utiliza la función InStrRev para buscar una cadena:

Ejemplo 1:

Dim SearchString, SearchChar, MyPos
SearchString ="abcdABCD"   ' String to search in.
SearchChar = "a"   ' Search for "a"
MyPos = InstrRev(SearchString, SearchChar)  ' Default Comparison is binary and starting at the last position (Third and Fourth argument is omitted)
'Output: 1

Ejemplo 2:

Dim SearchString, SearchChar, MyPos
SearchString ="XXpXXpXXPXXP"   ' String to search in.
SearchChar = "P"   ' Search for "P".
MyPos = InstrRev(SearchString, SearchChar, 8)   ' Comparison is binary by default (last argument is omitted). 
'Output: 0

Ejemplo 3:

Dim SearchString, SearchChar, MyPos
SearchString ="XXpXXpXXPXXP"   ' String to search in.
SearchChar = "P"   ' Search for "P".
MyPos = InstrRev(SearchString, SearchChar, 10, 0)   ' A binary comparison starting at position 10. 
'Output: 9
MyPos = InstrRev(SearchString, SearchChar, -1, 1)   ' A textual comparison starting at the last position.
'Output: 12

Ejemplo 4:

Dim SearchString, SearchChar, MyPos
SearchString ="abcdABCD"   ' String to search in.
SearchChar = "a"   ' Search for "a"
MyPos = InstrRev(SearchString, SearchChar, -1, 0)   ' A binary comparison starting at the last position.
'Output: 1
MyPos = InstrRev(SearchString, SearchChar, -1, 1)   ' A textual comparison starting at the last position.
'Output: 5

Nota:

La sintaxis de la función InStrRev no es la misma que la sintaxis de la función InStr.