Werte aus Musterzeichenfolge in 3 Spalten extrahieren?

Werte aus Musterzeichenfolge in 3 Spalten extrahieren?

Ich habe eine einzelne Spalte, die eine Zeichenfolge mit dem folgenden Muster enthält:

blablabla?bla&bla&tv_a=value1&tv_b=value2&tv_3=value3

tv_[i]Ich möchte die Daten aus den Zeichenfolgen in drei separate Spalten extrahieren :

value1 value2 value3

Beispiel:

Für die folgenden beiden Datensätze:

long-url-here?a=0&b=4&tv_a=hello&tv_b=there&tv_3=now

other-url?z=4&v=2&tv_a=this&tv_b=is%20an2&tv_3=example

Die Spalten sollten sein:

column 1 | column 2 | column 3
-------------------------------
hello    | there    | now
this     | is an    | example

Antwort1

Tragen Sie dies in die erste Zeile ein und ändern Sie A1 in die erste Zelle:

=MID(TRIM(MID(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE($A1,"2",""),"%0"," "),"&tv_",REPT(" ",999)),999*COLUMN(A:A),999)),FIND("=",TRIM(MID(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE($A1,"2",""),"%0"," "),"&tv_",REPT(" ",999)),999*COLUMN(A:A),999)))+1,999)

Ziehen Sie dann zwei weitere Spalten darüber und nach unten, soweit erforderlich.

![Bildbeschreibung hier eingeben

Antwort2

Anhand Ihres Beispiels:

lange URL hier?a=0&b=4&tv_a=hallo&tv_b=da&tv_3=jetzt

Ich gehe die Dinge „stückweise“ an, d. h. ich zerlege das Problem in kleinere Teile und setze sie dann zusammen. Das ist auch als „Teile und herrsche“-Ansatz bekannt. So sieht es aus:

Sie haben festgestellt, dass die für Sie interessanten URLs drei Variablen enthalten, und zwar in dieser Reihenfolge:
     tv_a,tv_b,fernseher_3.Aber lassen wir es dabei:tv_a,tv_bee,tv_300000

Lassen Sie uns anhand der URL Folgendes finden: tv_a:
     =FINDEN("tv_a", URL, 1)=23=Position- Suchen Sie in der URL nach der Zeichenfolge „tv_a“, beginnend an der Position des 1. Zeichens in der Zeichenfolge.

Wie lang ist die Variable tv_a?
      =LEN("tv_a")=4=Länge

Geven derURLund dasPositiondes erstenVariableund dasLängeder Variablen, suchen wir das Wort nach dem '='-Zeichen:
      =MITTE(URL, Variable+Länge+1, Länge+1)=Hallo

Sie können die gesamte Formel in einer einzigen Formel zusammenfassen. Das ist in Excel eine triviale Aufgabe. Die Namenskonvention in diesem Beispiel lautet:URL (URL)=A3,Erste=B2,zweite=C2,dritte=D2. So sieht es aus: Bildbeschreibung hier eingeben Alle drei Variablen: bezüglich des Layouts des Bilds oben
     1. = MID(URL, B3+LEN(erste)+1, C3-B3-LEN(erste)-2)=hallo
     2. = MID(URL, C3+LEN(zweite)+1, D3-C3-LEN(zweite)-2)=da
     3. = RECHTS(URL, LEN(URL)-FINDEN(dritte, URL, D3)-LEN(dritte))=jetzt

Ein triviales Aufgabenbeispiel: Verwendung von Helferzellen

Sei B3=FIND(first,url,1), C3=LEN(first): bevorzugt
1. = MID (URL, B3 + LEN (erste) + 1, C3-B3-LEN (erste) - 2) = Hallo
Durch Ersetzung können Sie anstelle von Hilfszellen eine einzelne Zeile verwenden:
1. = MID(URL,FIND(erste,URL,1)+LEN(erste)+1,FIND(zweite,URL,1)-FIND(erste,URL,1)-LEN(erste)-2)=hallo

Sie werden feststellen, dass es beim Lösen solcher Probleme besser ist, stückweise Lösungsmethoden zu verwenden, um zu Projekten zurückzukehren und sie später in anderen, ähnlichen Bereichen zu verwenden. Auf diese Weise können Sie die Lösung des Problems einfacher erkennen, weil sie unkompliziert ist.

*Namenskonvention:https://support.office.com/en-us/article/Namen-in-Formeln-definieren-und-verwenden-4d0f13ac-53b7-422e-afd2-abd7ff379c64

verwandte Informationen