extraer texto del último carácter especial en Excel

extraer texto del último carácter especial en Excel

Ejemplo:

*AB|USA|California|los angles_backup
*AB|USA|California_backup

Preguntas: Necesito la palabra después de la última barra vertical (|). En el primer ejemplo, solo necesito Los ángulos y, para el segundo ejemplo, solo necesito California.

Respuesta1

Usar

Function GetLastPartAfterPipe(str As String) As String
    tmp = Split(str, "|")
    GetLastPartAfterPipe = tmp(UBound(tmp))
End Function

y B1=GetLastPartAfterPipe(A1)

Respuesta2

Aquí hay una solución que utiliza únicamente funciones integradas:

  • primero calcular la ubicación del último |:
    =MAX(IF(MID(A1,ROW(OFFSET(A1,1,1,LEN(A1))),1)="|",ROW(OFFSET(A1,1,1,LEN(A1))),""))
    Esta es una fórmula matricial, así que presione CTRL+MAYÚS+ENTRAR después de escribirla
  • En segundo lugar, puede obtener el texto que desee:
    =MID(A1,B1+1,LEN(A1)-B1)

ingrese la descripción de la imagen aquí

Respuesta3

Dado que hay un '_backup' al final de todo, sería mejor hacerlo en dos pasos en lugar de crear una única fórmula muy larga.

Paso uno Bpara eliminar los datos después de la última tubería:

=RIGHT(A1,LEN(A1)-FIND("@",SUBSTITUTE(A1,"|","@",LEN(A1)-LEN(SUBSTITUTE(A1,"|",""))),1))

Luego el paso dos en C:

=MID(B1,1,FIND("_",B1)-1)

ingrese la descripción de la imagen aquí

Respuesta4

=LEFT(TRIM(RIGHT(SUBSTITUTE(A1,"|",REPT(" ",99)),99)),FIND("_",TRIM(RIGHT(SUBSTITUTE(A1,"|",REPT(" ",99)),99)))-1)
  • TRIM(RIGHT(SUBSTITUTE(A1,"|",REPT(" ",99)),99))devolverá la última subcadena separada por tubería.
  • LEFT(last_substring,FIND("_", last_substring)-1)luego devuelve la parte de esa subcadena antes del guión bajo.

ingrese la descripción de la imagen aquí

información relacionada