Arrays 单元格中多个值的Vlookup

Arrays 单元格中多个值的Vlookup,arrays,google-sheets,google-sheets-formula,array-formulas,textjoin,Arrays,Google Sheets,Google Sheets Formula,Array Formulas,Textjoin,我希望能够返回[cat,dog],如B列所示。这更像是一个POC,但对于我面临的主要挑战,单元格A1中将有未知数量的值。我不确定是否有一种方法可以用vlookup来实现这一点,或者是否有更好的方法来实现这一点 使用: 猜测可能有不止一种犬种(狗,狗2,…),所有犬种都应返回: =”[“ &加入( ",", 质疑( A3:B11, “选择B 其中A匹配“^(?:”&JOIN(“|”),UNIQUE(SPLIT(A1,“[,]”)和“$” 由B命令“, 0 ) ) & "]" 我们只需使用过滤掉与

我希望能够返回[cat,dog],如B列所示。这更像是一个POC,但对于我面临的主要挑战,单元格A1中将有未知数量的值。我不确定是否有一种方法可以用vlookup来实现这一点,或者是否有更好的方法来实现这一点

使用:


猜测可能有不止一种犬种(狗,狗2,…),所有犬种都应返回:

=”[“
&加入(
",",
质疑(
A3:B11,
“选择B
其中A匹配“^(?:”&JOIN(“|”),UNIQUE(SPLIT(A1,“[,]”)和“$”
由B命令“,
0
)
)
& "]"
我们只需使用过滤掉与正则表达式
^feline | canine |$
不匹配的所有内容,并使用逗号将其连接起来

正则表达式是这样构造的(只有由
|
连接的唯一单词):

”^(?“&JOIN(|)”,唯一(拆分(A1,“[,]”)和“$”

1 A1/B1是否必须放在括号内?2.您是否特别想要
VLOOKUP
?您知道
QUERY()
函数吗?请@player0始终在您的答案中添加一些解释。
=ARRAYFORMULA("["&TEXTJOIN(",", 1, 
 IFERROR(VLOOKUP(FLATTEN(SPLIT(A1, "[,]", 1, 0)), A3:B, 2, 0)))&"]")