Excel formula: Extract word containing specific text

Fórmula genérica

=ESPACIOS(EXTRAE(SUSTITUIR(A1," ",REPETIR(" ",99)),MAX(1,ENCONTRAR("@",SUSTITUIR(A1," ",REPETIR(" ",99)))-50),99))

Explicación

Para extraer una palabra que contiene texto específico, puede usar una fórmula basada en varias funciones, que incluyen ESPACIOS, IZQUIERDA, SUSTITUIR, EXTRAE, MAX y REPETIR. Puede usar esta fórmula para extraer elementos como direcciones de correo electrónico u otras subcadenas con una identificación única.

En el ejemplo que se muestra, la fórmula en C5 es:

=ESPACIOS(EXTRAE(SUSTITUIR(B5," ",REPETIR(" ",99)),MAX(1,ENCONTRAR("@",SUSTITUIR(B5," ",REPETIR(" ",99)))-50),99))

Cómo funciona esta fórmula

La esencia: esta fórmula "inunda" el espacio entre las palabras en una cadena de texto con una gran cantidad de espacios, encuentra y extrae la subcadena de interés, y utiliza la función ESPACIOS para limpiar el desorden.

Trabajando de adentro hacia afuera, el texto original en B5 está inundado de espacios usando SUSTITUIR:

SUSTITUIR(B5," ",REPETIR(" ",99))

Esto reemplaza cada espacio individual con 99 espacios.

Nota: 99 es solo un número arbitrario que representa la palabra más larga que necesita extraer.

Luego, la función ENCONTRAR localiza el carácter específico (en este caso, "@") dentro del texto inundado:

ENCONTRAR("@",SUSTITUIR(B5," ",REPETIR(" ",99)))-50

ENCONTRAR devuelve la posición de la "@" en este texto, de la cual se resta 50. Restar 50 efectivamente "retrocede" la posición a un lugar en el medio de los espacios que preceden a la subcadena de interés. En el ejemplo que se muestra, la posición calculada es 366.

La función MAX se usa para manejar el problema de la subcadena que aparece primero en el texto. En ese caso, la posición será negativa y MAX se usará para restablecer a 1.

Con una posición inicial establecida, EXTRAE se usa para extraer 99 caracteres de texto, comenzando en 366 del texto en B5, nuevamente inundado de espacio:

EXTRAE(SUSTITUIR(B5," ",REPETIR(" ",99)),366,99)

Esto extrae la subcadena de interés, con muchos caracteres de espacio antes y después.

Finalmente, la función ESPACIOS se usa para recortar el espacio inicial y final, y devuelve una subcadena que contiene el carácter especial.


Comentarios en Facebook


0 comentarios:

Copyright © 2021 TRUJILLOSOFT