Excel 为多个可能的字符串删除字符串前的文本

Excel Remove text before string for multiple possible strings

对于 Excel,我需要从列中的所有单元格中查找并删除一些文本。使用下面的示例,我需要将 DEV* 和 BA* 的所有实例放入另一列。

列中的示例数据:
数据
丹·史密斯 DEV001
鲍勃·琼斯 BA005
鲍勃·琼斯 2 BA 005

需要结果
DEV001
BA005
BA 005

此示例部分有效,但不适用于多个可能的匹配项。

=TRIM(RIGHT(A2, LEN(A2) - SEARCH("DEV", A2)))

如何使用多个可能的匹配项来完成此操作?

试试这个

• 单元格 B1

中使用的公式
=REPLACE(A1,1,MAX(IFERROR(FIND({"DEV","BA"},A1),""))-1,"")

使用 ms365 访问 TEXTBEFORE() 的用户需要考虑以下事项:

B1中的公式:

=SUBSTITUTE(A1,TEXTBEFORE(A1,{"DEV","BA"}),"",1)
  • TEXTBEFORE() - 将查找(区分大小写)'DEV' 或 'BA' 并将 return 子字符串 放在 之前这两个中的任何一个的第一次出现;
  • SUBSTITUTE() - 将用任何内容替换(也区分大小写)这个 returned 子字符串。并且为了确保我们不会在查找值之后替换不需要的部分,我们只替换第一次出现的部分。