2012-04-12 13 views
1

Ich habe eine Tabelle mit Hunderten von URLs. Jede URL hat einen suchmaschinenfreundlichen Namen, gefolgt von einer numerischen ID mit einem "/ 1" am Ende. hier ist ein Beispiel:Hilfe zum Extrahieren von Text aus einer URL

http://www.somesite.com/directory/varying-file-names-Guide/431/1

in diesem Fall ist die 431 die numerische ID ist. Ich versuche, diese numerische ID in eine eigene Spalte zu extrahieren, aber mein Mangel an Excel-Kenntnissen hält mich definitiv zurück. Ich habe ein paar Beispiele gefunden, aber meine Versuche, dieses Beispiel an meine Bedürfnisse anzupassen, führt zu Fehlern. In allen Fällen liegt der Wert, den ich extrahieren muss, immer zwischen "-Guides /" und "/ 1" in der URL.

jede Hilfe würde sehr geschätzt werden.

danke!

+0

Die Beispiel-URL enthält keine "-Guides /" – Marc

Antwort

1

Angenommen, Ihre URL in A1 versuchen, diese Formel in B1, die Zahl

=REPLACE(LEFT(A1,LEN(A1)-2),1,SEARCH("Guide/",A1)+5,"")

"Guide" nicht "Guides" zu extrahieren geht davon aus - wenn es "Guides", dann die 5 muss ein 6 sein. ...., dh

=REPLACE(LEFT(A1,LEN(A1)-2),1,SEARCH("Guides/",A1)+6,"")

... oder ein anderer Ansatz, die eine beliebige Anzahl extrahieren, die von dem Ende

=LOOKUP(10^5,RIGHT(LEFT(RIGHT(A1,7),5),{1,2,3,4,5})+0)

Extrakte bis zu 5 Ziffern

+0

Vielen Dank! Das hat funktioniert. –

0

Diese Formel bei der 3. charcater endet sollte unabhängig von dem Wort vor der numerischen ID funktionieren. Angenommen, Ihre URL wird in Zelle A1,

in der Zelle B1:

=SUBSTITUTE(LEFT(A1, LEN(A1) - 2), "/","||", LEN(LEFT(A1, LEN(A1) - 2)) - LEN(SUBSTITUTE(LEFT(A1, LEN(A1) - 2), "/",""))) 

In Zelle C1:

=RIGHT(B1,LEN(B1)-FIND("||",B1)-1) 
0

Dank an alle, die geantwortet. Ein Kollege von mir hat auch einen anderen Ansatz gefunden, der auch funktioniert hat.

=MID(A6,FIND("uide/",A6,1)+5,LEN(A6)-FIND("tion/",A6,1)-6) 

Ich dachte, ich würde dies für jeden mit einbeziehen, der das gleiche Problem hat. Es ist interessant zu sehen, wie Menschen das Problem angehen.