Excel:如何从文本中删除多个文件路径

Pad*_*dyD 5 microsoft-excel

我在电子表格中有 2000 行来引用一个项目图像,我需要去掉文件路径,但有些字段在一个单元格中有多个图像引用,所以举一个复杂的例子:

/2/0/2099-1.jpg、/2/0/2099-2.jpg、/2/0/2099-3.jpg、/m/a/male_headless_mannequin_-_arms_folded.jpg

需要看起来像这样:

2099-1.jpg,2099-2.jpg,2099-3.jpg,male_headless_mannequin_-_arms_folded.jpg

但只有一张图片参考,例如:

/3/1/31-222-007.jpg,

公式:

> =MID(AA2,FIND("*",SUBSTITUTE(AA2,"/","*",LEN(AA2)-LEN(SUBSTITUTE(AA2,"/",""))))+1,LEN(AA2))
Run Code Online (Sandbox Code Playgroud)

当只有一个 jpg 时效果很好,但如果有多个,我就卡住了。

谢谢

Jvd*_*vdV 6

使用数据A1,尝试:

=CONCAT(FILTERXML("<t><s>"&SUBSTITUTE(A1,"/","</s><s>")&"</s></t>","//s[substring(., string-length(.) - 3) = '.jpg' or substring(., string-length(.) - 4) = '.jpg,']"))
Run Code Online (Sandbox Code Playgroud)

如果您运行 Excel 2019,则需要 CSE 此公式。如果有 Excel O365,则不需要 CSE,但也有一个较短的版本,使用LET()

=LET(X,FILTERXML("<t><s>"&SUBSTITUTE(A1,"/","</s><s>")&"</s></t>","//s"),CONCAT(IF(ISNUMBER(FIND(".jpg",X)),X,"")))
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明


对于那些感兴趣的人,我在下面的评论中提到的问答链接