Excel formula: Find nth occurrence of character

Fórmula genérica

=ENCONTRAR(CARACTER(160),SUSTITUIR(text,"@",CARACTER(160),N))

Explicación

Para encontrar la enésima aparición de un carácter en una cadena de texto, puede usar una fórmula basada en las funciones ENCONTRAR y SUSTITUIR. En el ejemplo que se muestra, la fórmula en D5 es:

=ENCONTRAR(CARACTER(160),SUSTITUIR(B5,"@",CARACTER(160),C5))

Cómo funciona esta fórmula

En este ejemplo, estamos buscando la enésima aparición del carácter "@".

Trabajando de adentro hacia afuera, primero usamos la función SUSTITUIR para reemplazar la enésima aparición de "@" con CARACTER (160):

SUSTITUIR(B5,"@",CARACTER(160),C5)

La función SUSTITUIR tiene un cuarto argumento opcional llamado número de instancia que se puede usar para especificar la instancia que se debe reemplazar. Este número proviene de la columna C.

SUSTITUIR luego reemplaza la enésima aparición de "@" con CARACTER (160), que se resuelve en "†". Usamos CARACTER (160) porque normalmente no aparecerá en el texto. Puede usar cualquier carácter que sepa que no existirá en el texto. Para ver una demostración de la función CARACTER, vea este video.

Finalmente, el personaje ENCONTRAR busca CARACTER (160) y devuelve la posición.

Nota: Desarrollé este ejemplo originalmente en una Mac, donde CARACTER (160) se resuelve en una daga (†). En Windows, use CARACTER (134) para un personaje de daga.


Comentarios en Facebook


0 comentarios:

Copyright © 2021 TRUJILLOSOFT