Google sheets 当文本可以更改时,如何提取google工作表单元格中文本的确切部分?

Google sheets 当文本可以更改时,如何提取google工作表单元格中文本的确切部分?,google-sheets,Google Sheets,在Google Sheets电子表格中,我有一个单元格A1,其值为“people 12-14 ABC”。我想将精确匹配的“ABC”提取到另一个单元格中。单元格A1的内容可以更改,例如更改为“woman 60+ABCD”。对于此输入,我希望提取“ABCD”。如果A1改为“女性12-20 CAE”,我想要“CAE” 最后一部分有5个可能的字符串:(ABC、ABCD、AB、CAE、C),而第一部分有很多(~400个可能) 如何确定5个字符串中的哪一个在A1中?如果您可以保证格式良好的输入,这只需将A1

在Google Sheets电子表格中,我有一个单元格A1,其值为“people 12-14 ABC”。我想将精确匹配的“ABC”提取到另一个单元格中。单元格A1的内容可以更改,例如更改为
“woman 60+ABCD”
。对于此输入,我希望提取“ABCD”。如果A1改为“女性12-20 CAE”,我想要“CAE”

最后一部分有5个可能的字符串:(ABC、ABCD、AB、CAE、C),而第一部分有很多(~400个可能)


如何确定5个字符串中的哪一个在A1中?

如果您可以保证格式良好的输入,这只需将A1的内容拆分为其组成部分(例如“性别过滤器”、“年龄范围”和“我的5个类别”),并选择结果字符串数组的适当索引即可

要将单元格内容转换为该内容的数组,可以使用

B1 = SPLIT(A1, " ")
将条目放入B1、C1和D1,其中D1具有您想要的值-提供您的性别筛选器和年龄范围

因为您可能不希望有那些多余的垃圾值,所以您希望将拆分结果完全包含在B1中。为此,我们需要将由
SPLIT
生成的数组传递给一个可以接受范围或数组输入的函数。作为奖励,我们希望再选择此范围的一部分(特别是最后一个)。为此,我们可以使用

这告诉
INDEX
函数访问由
SPLIT
生成的范围的第一行和最后一列,对于您提供的输入,它是“ABC”、“ABCD”和“CAE”。

如果第一部分“only”有小写或数字,最后一部分“only”有大写

=REGEXREPLACE(D3;"[^A-E]";)
主持人:太空

=REGEXEXTRACT(A31;"\s([A-E]+)$")

你试过使用哪一个?我试过正则表达式抽取,但当我使用ABC或ABCD时,结果是ABC=SI。错误(正则表达式抽取(D3;“ABC”);“检查”)第一部分有字母和数字,我可以在第一部分放低一些的字母
=REGEXEXTRACT(A31;"\s([A-E]+)$")