【发布时间】:2019-09-07 04:48:34
【问题描述】:
我希望将列(A、B、C)中的关键字列表和分类(D 列)每个链接与关键字列表中找到的字符串进行匹配。
- 将链接字符串与关键字列表匹配以进行分类
- 如果类别有 2 个关键字,则两个关键字必须匹配才能进行分类
- 文章单词分隔符将始终为“-”
我认为谷歌应用脚本最好是对其进行有效分类。
这是电子表格:https://docs.google.com/spreadsheets/d/1W4VAqUDVdJ6EJqzhkMlYRnUOSSM-kdhj3MfuZsu17qM/edit#gid=0
到目前为止,我有这个公式有时会起作用,但速度慢且不一致:
=ARRAYFORMULA(IFERROR(REGEXEXTRACT(
IFERROR(VLOOKUP(INDEX(IFERROR(REGEXEXTRACT(IFERROR(SPLIT(H2:H, "-")),
TEXTJOIN("|", 1, A2:C))),,1), {{A2:A;B2:B;C2:C},{D2:D;D2:D;D2:D}}, 2, 0))&
IFERROR(VLOOKUP(INDEX(IFERROR(REGEXEXTRACT(IFERROR(SPLIT(H2:H, "-")),
TEXTJOIN("|", 1, A2:C))),,2), {{A2:A;B2:B;C2:C},{D2:D;D2:D;D2:D}}, 2, 0))&
IFERROR(VLOOKUP(INDEX(IFERROR(REGEXEXTRACT(IFERROR(SPLIT(H2:H, "-")),
TEXTJOIN("|", 1, A2:C))),,3), {{A2:A;B2:B;C2:C},{D2:D;D2:D;D2:D}}, 2, 0)),
TEXTJOIN("|", 1, UNIQUE(IFERROR({
VLOOKUP(INDEX(IFERROR(REGEXEXTRACT(IFERROR(SPLIT(H2:H, "-")),
TEXTJOIN("|", 1, A2:C))),,1), {{A2:A;B2:B;C2:C},{D2:D;D2:D;D2:D}}, 2, 0);
VLOOKUP(INDEX(IFERROR(REGEXEXTRACT(IFERROR(SPLIT(H2:H, "-")),
TEXTJOIN("|", 1, A2:C))),,2), {{A2:A;B2:B;C2:C},{D2:D;D2:D;D2:D}}, 2, 0);
VLOOKUP(INDEX(IFERROR(REGEXEXTRACT(IFERROR(SPLIT(H2:H, "-")),
TEXTJOIN("|", 1, A2:C))),,3), {{A2:A;B2:B;C2:C},{D2:D;D2:D;D2:D}}, 2, 0)}))))))
如何使用 Google 应用脚本实现这一点?任何帮助表示赞赏,谢谢!
【问题讨论】:
标签: google-apps-script google-sheets