Las funciones INSTR (INSTR, INSTRB, INSTRC, INSTR2 e INSTR4) buscan una cadena para una subcadena usando caracteres y devuelven la posición en la cadena que es el primer carácter de un especificado aparición de la subcadena. Las funciones varían en la forma en que determinan la posición de la subcadena a devolver.
-
INSTR calcula las longitudes utilizando caracteres definidos por el conjunto de caracteres de entrada.
-
INSTRB calcula longitudes usando bytes.
-
INSTRC calcula longitudes usando caracteres completos Unicode.
-
INSTR2 calcula longitudes usando puntos de código UCS2.
-
INSTR4 calcula longitudes usando puntos de código UCS4.
Valor de retorno
Un INTEGER distinto de cero cuando la búsqueda es exitosa o 0
(cero) cuando no lo es.
Sintaxis
{INSTR | INSTRB | INSTRC | INSTR2 | INSTR4} (cadena, subcadena])
Argumentos
cadena
La expresión de texto a buscar.
subcadena
La cadena a buscar.
posición
Un INTEGER distinto de cero que indica en qué parte de la cadena comienza la búsqueda la función. INSTR calcula la posición utilizando caracteres definidos por el juego de caracteres de entrada. INSTRB calcula la posición usando bytes. INSTRC calcula la posición utilizando caracteres completos Unicode. INSTR2 calcula la posición utilizando puntos de código UCS2. INSTR4 calcula la posición usando puntos de código UCS4.
Cuando la posición es negativa, INSTR cuenta y busca hacia atrás desde el final de la cadena. El valor predeterminado de la posición es 1
, lo que significa que la función comienza a buscar al principio de la cadena.
ocurrencia
Un INTEGER que indica qué ocurrencia de cadena debería buscar. El valor de ocurrencia debe ser positivo. Los valores predeterminados de ocurrencia son 1
, lo que significa que la función busca la primera ocurrencia de subcadena.
Ejemplos
Ejemplo 7 -127 Uso de la posición de carácter para buscar hacia adelante para encontrar la posición de una subcadena
El siguiente ejemplo busca en la cadena «Piso corporativo», comenzando con el tercer carácter, la cadena «o». Devuelve la posición en «Piso corporativo» en la que comienza la segunda aparición de «o».
SHOW INSTR("Corporate Floor","or", 3, 2)14
Ejemplo 7-128 Uso de la posición de carácter para buscar hacia atrás para encontrar la posición de una subcadena
En el siguiente ejemplo, la función cuenta hacia atrás desde el último carácter hasta el tercer carácter desde el final, que es la primera «o» en » Suelo». Luego, la función busca hacia atrás la segunda aparición de «o», y encuentra que esta segunda aparición comienza con el segundo carácter en la cadena de búsqueda.
SHOW INSTR("Corporate Floor","or", -3, 2)2
Ejemplo 7-129 Uso de un juego de caracteres de doble byte para encontrar la posición de una subcadena
Este ejemplo asume un juego de caracteres de base de datos de doble byte.
SHOW INSTRB("Corporate Floor","or",5,2) 27