首页 > 解决方案 > 如何在最后一个下划线之后提取Excel中字符串的最后一部分

问题描述

我有以下示例数据:

1. animated_brand_300x250
2. animated_brand_300x600
3. customaffin_greenliving_solarhome_anim_outage_offer

如何从 Microsoft Excel 中的最后一个下划线中提取字符串?

我想提取第一个下划线之前和最后一个下划线之后的值。

第一个下划线:

=LEFT(B6,SEARCH(“_”,B6)-1)

将返回animatedcustomaffin作为输出。

如何返回最后一个下划线后的字符串?

标签: excelexcel-formula

解决方案


其他一些选项可能是:

=TRIM(RIGHT(SUBSTITUTE(A1,"_",REPT(" ",100)),100))

或者使用FILTERXML, 理论上是一个更好的选择:

=FILTERXML("<t><s>"&SUBSTITUTE(A1,"_","</s><s>")&"</s></t>","//s[last()]")

ExcelO365 独有的方法甚至可以使用XLOOKUP

=REPLACE(A1,1,XLOOKUP("_",MID(A1,SEQUENCE(LEN(A1)),1),SEQUENCE(LEN(A1)),,0,-1),"")

或者:

=RIGHT(A1,MATCH("_",MID(A1,SEQUENCE(LEN(A1),,LEN(A1),-1),1),0)-1)

推荐阅读