我想只使用Excel公式解决这个问题(没有VB脚本)。这是A列,每一行都是另一个单元格(我将URL中的冒号替换为星号,因为我无法发布它们):
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,我只能得到一个。提取所有网址的更好方法是什么?是否只能使用Excel公式?
答案 0 :(得分:0)
至少你必须把这个公式......
= MID(A1,INSTR(A1,"http"),INSTR(A1,"jpg")-INSTR(A1,"http")+2)
答案 1 :(得分:0)
我并不完全清楚你的要求(超过2个一个单元/ .jpd或.jpg /更好的方法是主观的)但是下面的公式可能适合:
= 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首先分为列(数据>数据工具>文本到列,分隔,其他:/
,完成)。