在单元中查找不同的string

我只想使用Excel公式解决这个问题(没有VB脚本)。 这里是列A,每一行都是另一个单元格(我将url中的冒号replace为星号,因为我无法发布它们):

dkfl kdf l sfljdsgfs http * // www.ebay.com/haha.jpg“sfkld fk
dl san djfms djd http * // www.amazon.com/ka.jpg“js ka jfo jdjs http * // www.google.com/lilo.jpd fd sfdg
sdf sdf jpg https * // www.microsoft.com/img.jpg“kkl lla

目标是提取每个单元格中的所有URL。 如果可能的话,也用逗号隔开(但只是让他们会很好,我可以稍后添加一个逗号的结果)。

我用在单元格B1(然后到B2和B3) =LEFT(A1,FIND("jpg"" ",A1)+2)给了我:

 dkfl kdf l sfljdsgfs http*//www.ebay.com/haha.jpg dl san djfms djd http*//www.amazon.com/ka.jpg sdf sdf jpg https*//www.microsoft.com/img.jpg 

并在单元格C1中进一步使用=RIGHT(B1,LEN(B1)-FIND(" http:",B1))

C栏结果:

HTTP // * www.ebay.com/haha.jpg
HTTP // * www.amazon.com/ka.jpg
HTTPS * // www.microsoft.com/img.jpg

除了单元格A2有两个不同的URL,我只能得到一个。 什么是更好的方法来提取所有的url? 只有Excel公式可能吗?

至less你必须把这个公式

 = MID(A1,INSTR(A1,"http"),INSTR(A1,"jpg")-INSTR(A1,"http")+2) 

我不完全清楚你的要求(一个cell / .jpd或.jpg / better方法中的2个以上是主观的),但是下面的公式可能适合:

= MID(A1,FIND( “HTTP”,A1),LEN(A1) – 查找( “HTTP”,A1)+1)& “//” &C1& “/” &LEFT(D1,FIND( “JPG”, D1)3)IF(ISBLANK(F1), “”, “,,” &MID(D1,FIND( “HTTP”,D1),LEN(D1) – 查找( “HTTP”,D1)+1)&” //"&F1&"/"&LEFT(G1,FIND(".jpg",G1)+3))

如果columnA首先被分隔成列(Data> Data Tools> Text to Columns,Delimited,Other: /Finish )。