我正在尝试过滤掉并匹配 Google 表格中的确切文本

I am trying to filter out and match exact text in Google Sheets

我在 Google Spreadsheet 中有文本,这是查询的结果。 在单元格 A2 中,我有一个学生的姓名。 在单元格 B2 中,我列出了他们所有的课程。 例如,B2 可能如下所示: 英语我 数学我 世界史 聚乙烯 摄影 1 (每行一门课程,都在同一个单元格中)

在 E 列中,我有一个课程列表。 在 F 列中,我需要一份包含在 B 列中学习该课程的所有学生的列表。我需要将每个列表放在一个单元格中。 例如在 E2 中,它会说英语 I。而在 F2 中,它会读作:
学生 1 学生 2 学生 3 (一个单元格,每行一个学生)

通过这个公式,我得到了所有参加该课程的学生的列表,以及其中包含该课程的所有学生的列表。 =IFERROR(if(E2="","",(JOIN( char(10) , FILTER(A:A,search(E2,B:B))))))

所以,它 returns 所有选修英语 I 的学生,还有所有选修英语 II 的学生。

有没有办法让它完全匹配英语 I 并且只匹配英语 I?

https://docs.google.com/spreadsheets/d/1l53sEQHc6SqZW-3ycYVkGtTKaj3ZCJFRk4NXlMQR4xE/edit?usp=sharing。我需要将其格式化为 'All Recs by Course' 选项卡上的黄色列。

编辑: 如果我使用此公式从不同的 sheet 中提取它: =IFERROR(if(E2="","",(JOIN(char(10),(FILTER(FEED!X:X,search(E2,FEED!V:V)))))))

我似乎能够选择正确的课程,但单元格看起来不像: 学生 1 学生 2 学生 3 (一个单元格,每行一个学生)

看起来像: 学生 1、学生 2、学生 3 (所有学生都在一个单元格中的水平列表中 - 这就是原始 sheet 上的情况)。

提前致谢, 贝丝

H2

=sort(unique(arrayformula(flatten(split(B2:B7,char(10))))))

在 I2 中(拖动到下面的下一个单元格)

=textjoin(char(10),,query(arrayformula(split(flatten(split(B:B,char(10))&"~"&A:A),"~")),"select Col2 where Col1='"&H2&"' "))