Saltar al contenido principal Saltar al contenido complementario

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

IndexRegExGroup() busca en la cadena de entrada y devuelve la posición inicial de la enésima instancia del patrón de expresión regular compuesto que se especifique. Un cuarto 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 IndexRegExGroupI() para realizar operaciones regex sin distinguir mayúsculas de minúsculas.

Sintaxis:  

IndexRegExGroup (text, regex, group [, 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.
group

El número del grupo, en el caso de una expresión regular compuesta.

Un valor de group0 devuelve el índice del regex completo. Sin embargo, si la expresión regular solo necesita devolver el índice de toda la coincidencia, utilice en su lugar la función IndexRegEx().

Puede especificar un valor negativo group para buscar coincidencias de derecha a izquierda.

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 buscar 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
IndexRegExGroup('abc123','([a-z])([0-9]+)',0) Devuelve 3 (posición inicial de la regex completa).
IndexRegExGroup('abc123','([a-z])([0-9]+)',1) Devuelve 3 (posición de inicio del primer grupo).
IndexRegExGroup('abc123','([a-z])([0-9]+)',2) Devuelve 4, que es la posición de inicio del segundo grupo. En el patrón regex de entrada, la cadena ([0-9]+) corresponde al segundo grupo.
IndexRegExGroup('ABC123','([a-z])([0-9]+)',1) Devuelve 0, porque IndexRegExGroup() distingue entre mayúsculas y minúsculas.
IndexRegExGroupI('ABC123','([a-z])([0-9]+)',1) 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, es posible que desee saber dónde se utiliza el dominio de una dirección de correo electrónico en una serie de mensajes largos.

  • IndexRegExGroup() 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 ExtractRegExGroup(), MatchRegEx(), y CountRegEx(), pero puede haber ocasiones en las que IndexRegExGroup() ofrezca soluciones que estas funciones no pueden proporcionar.

Ejemplo 1: script de carga para encontrar las posiciones de los componentes del ISBN

Ejemplo 2: expresiones de gráfico para encontrar posiciones de URL (con comparación IndexRegEx() )

¿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.