【问题标题】:Google Sheet REGEXMATCH with range带有范围的 Google 表格 REGEXMATCH
【发布时间】:2021-05-10 11:29:59
【问题描述】:

我想在整个列中搜索特定文本,要搜索的文本在另一列中。我正在使用以下公式:

=ARRAYFORMULA(if(isblank(A2:A),"",IFERROR(if(REGEXMATCH(UPPER(A2:A), B2:B4),"Yes","No"),"Not Found") ))

这个函数是比较单元格 A2 和 B2,A3 和 B3 等等.... 我想比较 A2 和 B2:B4,A3 和 B2:B3...

以下是工作表链接: https://docs.google.com/spreadsheets/d/164kxDO9aWZzr5qXjvtRlk_tiRoKU1W7Xc-Ig9VH8qzE/edit#gid=495498161

以上任何帮助将不胜感激....

【问题讨论】:

    标签: google-sheets google-sheets-formula


    【解决方案1】:

    将公式更改为

    =ARRAYFORMULA(if(isblank(A2:A),"",IFERROR(if(REGEXMATCH(UPPER(A2:A), TEXTJOIN("|", 1, B2:B4)),"Yes","No"),"Not Found")))
    

    或者,如果您想要完全匹配:

    =ARRAYFORMULA(if(isblank(A2:A),"",IFERROR(if(REGEXMATCH(UPPER(A2:A), ".*"&TEXTJOIN("|", 1, B2:B4)&".*"),"Yes","No"),"Not Found")))
    

    另请参阅您共享的电子表格中的重复工作表。

    看看有没有用?

    【讨论】:

    • 你好....公式正在工作并给出结果,是否可以通过使用 SEARCH 使公式变得简单,如下所示: =ARRAYFORMULA(if(isblank(A2:A)," ",if(iserror(SEARCH($B$2:$B$5,A2:A)),"No","Yes"))).. 我添加了名为“Search”的工作表以供参考
    • 你可以试试 =ARRAYFORMULA(if(isblank(A2:A),"",if(iserror(match(A2:A, $B$2:$B$5, 0)),"No ","是")))
    • 该公式有效,但它仅识别特定文本,即如果单元格包含 ABC,则其将反映是,但如果单元格包含 XYZABC 或 ABC XYZ,它将反映否
    • 检查 F2 中的公式。它产生与正则表达式匹配的公式相同的输出。
    猜你喜欢
    • 2021-10-05
    • 2022-06-20
    • 2019-06-29
    • 1970-01-01
    • 1970-01-01
    • 2020-09-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多