
Generische Formel
=TRIM(MID(SUBSTITUTE(A1," ",REPT(" ",99)),MAX(1,FIND("@",SUBSTITUTE(A1," ",REPT(" ",99)))-50),99))
Zusammenfassung
Um ein Wort zu extrahieren, das bestimmten Text enthält, können Sie eine Formel verwenden, die auf mehreren Funktionen basiert, einschließlich TRIM, LEFT, SUBSTITUTE, MID, MAX und REPT. Mit dieser Formel können Sie beispielsweise E-Mail-Adressen oder andere Teilzeichenfolgen mit einer eindeutigen ID extrahieren.
Im gezeigten Beispiel lautet die Formel in C5:
=TRIM(MID(SUBSTITUTE(B5," ",REPT(" ",99)),MAX(1,FIND("@",SUBSTITUTE(B5," ",REPT(" ",99)))-50),99))
Erläuterung
Das Wesentliche: Diese Formel "überflutet" den Raum zwischen Wörtern in einer Textzeichenfolge mit einer großen Anzahl von Leerzeichen, findet und extrahiert den interessierenden Teilstring und verwendet die TRIM-Funktion, um das Durcheinander zu beseitigen.
Von innen nach außen wird der Originaltext in B5 mit SUBSTITUTE mit Leerzeichen überflutet:
SUBSTITUTE(B5," ",REPT(" ",99))
Dies ersetzt jedes einzelne Leerzeichen durch 99 Leerzeichen.
Hinweis: 99 ist nur eine beliebige Zahl, die das längste Wort darstellt, das Sie extrahieren müssen.
Als nächstes findet die FIND-Funktion das spezifische Zeichen (in diesem Fall "@") im überfluteten Text:
FIND("@",SUBSTITUTE(B5," ",REPT(" ",99)))-50
FIND gibt die Position des "@" in diesem Text zurück, von der 50 abgezogen wird. Durch Subtrahieren von 50 wird die Position effektiv an eine Stelle in der Mitte der Räume vor dem interessierenden Teilstring "zurückgeführt". In dem gezeigten Beispiel beträgt die berechnete Position 366.
Die MAX-Funktion wird verwendet, um das Problem zu lösen, dass der Teilstring zuerst im Text erscheint. In diesem Fall ist die Position negativ und MAX wird zum Zurücksetzen auf 1 verwendet.
Wenn eine Startposition festgelegt ist, wird MID verwendet, um 99 Zeichen Text, beginnend bei 366, aus dem Text in B5 zu extrahieren, der erneut mit Leerzeichen überflutet ist:
MID(SUBSTITUTE(B5," ",REPT(" ",99)),366,99)
Dadurch wird die interessierende Teilzeichenfolge mit vielen Leerzeichen davor und danach extrahiert.
Schließlich wird die TRIM-Funktion zum Trimmen des führenden und nachfolgenden Leerzeichens verwendet und gibt Teilzeichenfolgen zurück, die das Sonderzeichen enthalten.