在[另一个单元格的字符串]中找到对[一个单元格的字符串]返回true / false?

问题描述 投票:-2回答:1

单元格A1包含多个字符串,例如“ CAT DOG RAT GNU”;单元格A2包含多个字符串,例如“ RAT CAT”;如何运行测试(使用A3中的公式)以查找A2中的所有字符串是否都存在于单元格A1中?

  • 返回true / false会很好
  • 字符串不一定按相同的顺序,如上面的示例
  • 项目数量可能有所不同
  • 多个实例没有问题,只要它们在那里
  • 但是仅当单元格A1中存在单元格B2中的所有项目时才返回true。

到目前为止,我已经尝试使用vlookup和匹配项,计数等进行转置分割数组,但是对我没有任何帮助。 (也许正则表达式不会这样做,因为无法为每个字符串循环吗?)

regex google-sheets google-sheets-formula google-sheets-query
1个回答
0
投票

您可以尝试:

=ARRAYFORMULA(IF(PRODUCT(N(NOT(ISNA(REGEXEXTRACT(SPLIT(B1, " "), 
 SUBSTITUTE(A1, " ", "|"))))))=1, TRUE))

0

为了获得更高的精度,您可以这样做:

=ARRAYFORMULA(IF(PRODUCT(N(NOT(ISNA(REGEXEXTRACT(SPLIT(B1, " "), 
 "^"&SUBSTITUTE(A1, " ", "$|^")&"$")))))=1, TRUE))

0

然后区分大小写:

=ARRAYFORMULA(IF(PRODUCT(N(NOT(ISNA(REGEXEXTRACT(SPLIT(LOWER(B1), " "), 
 "^"&SUBSTITUTE(LOWER(A1), " ", "$|^")&"$")))))=1, TRUE))

0

© www.soinside.com 2019 - 2024. All rights reserved.