Saltar al contenido principal Saltar al contenido complementario

IndexRegEx - función de script y de gráfico

IndexRegEx() busca en la cadena de entrada y devuelve la posición inicial de la enésima instancia del patrón de expresión regular especificado. Un tercer argumento opcional count proporciona el valor de n, que es 1 si se omite. Las posiciones de la cadena se numeran de izquierda a derecha, de 1 en adelante. Si no se encuentra ninguna coincidencia, la función devuelve 0.

Esta función realiza operaciones regex que distinguen entre mayúsculas y minúsculas. Puede utilizar alternativamente la variante IndexRegExI() para realizar operaciones regex sin distinguir mayúsculas de minúsculas.

Sintaxis:  

IndexRegEx (text, regex [, count])

Tipo de datos que devuelve: Entero

Argumentos
Argumento Descripción
text El texto de la cadena de entrada en la que desea buscar una expresión regular.
regex La expresión regular que se utilizará para buscar la cadena de entrada.
count

El número de la coincidencia. Esto resulta útil cuando en el texto pueden encontrarse múltiples coincidencias para la expresión regular. Por ejemplo, especifique un valor de 4 para extraer la posición de la cuarta coincidencia.

Se trata de un argumento opcional. Por defecto es 1 si no se especifica. Puede especificar un valor negativo para buscar coincidencias de derecha a izquierda.

Ejemplos de funciones
Ejemplo Resultado
IndexRegEx('abc123','[a-z][0-9]+') Devuelve 3 (la posición de inicio de la primera coincidencia).
IndexRegEx('abc123','[a-z][0-9]+',2) Devuelve 0 (la regex no tiene una segunda coincidencia).
IndexRegEx('ABC123','[a-z][0-9]+') Devuelve 0, porque IndexRegEx() distingue entre mayúsculas y minúsculas.
IndexRegExI('ABC123','[a-z][0-9]+') Devuelve 3. Se utiliza la variante de la función que no distingue entre mayúsculas y minúsculas, IndexRegExI().

Cuándo se utiliza

Los casos de uso de esta función incluyen:

  • Identificar dónde se producen patrones textuales específicos dentro de cuerpos de texto más amplios. Por ejemplo, podría querer saber dónde se utiliza un patrón de dirección de correo electrónico en una serie de mensajes de correo electrónico largos.

  • IndexRegEx() es especialmente útil para el tratamiento avanzado de datos, y suele utilizarse en el primer paso de una transformación más larga y compleja. Normalmente es más fácil resolver los problemas con otras funciones regex como ExtractRegEx(), MatchRegEx(), y CountRegEx(), pero puede haber ocasiones en las que IndexRegEx() ofrezca soluciones que estas funciones no pueden proporcionar.

Ejemplo 1: script de carga para identificar libros por ISBN

Ejemplo 2: expresión de gráfico para identificar contactos con números de teléfono secundarios

¿Esta página le ha sido útil?

No dude en indicarnos en qué podemos mejorar si encuentra algún problema en esta página o su contenido, como, por ejemplo, errores tipográficos, pasos que falta o errores técnicos.