
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.
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:
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