表格:将FILTER用于多个字符串而不是仅仅完全匹配?

时间:2018-02-16 16:21:51

标签: google-sheets

我正在尝试根据列A和B的内容对列C进行SUM。像这样:

=sum(filter(C:C, (A:A="Safari")*(B:B="10.0.1")))

以上公式有效。 FILTER功能分别与A列和B列的“Safari”和“10.0.1”完全匹配。

问题是......这只捕获完全匹配:“10.0.1”。我需要捕获多个字符串,例如“10.0.1”,“10.0.2”,“10.0.3”等。

如果有帮助,请点击example sheet

我不确定正则表达式是否可以与过滤器功能结合使用。无论如何,我努力尝试并且失败了。那么......如何最好地过滤多个字符串而不仅仅是完全匹配?

2 个答案:

答案 0 :(得分:1)

=SUMIFS(C:C,A:A,"Safari",B:B,"10.0.*")

答案 1 :(得分:1)

请尝试:

=filter(C:C, (A:A="Safari")*(REGEXMATCH(B:B, "10\.0\..*")))

注意:

  • filter是一个arrayformlula,它有一个很棒的属性:它将其中的所有公式转换为数组公式
  • " 10.0 .. *"是你的比赛的正则表达式。 "\."将匹配一个点,".*"将匹配任何字符序列。请参阅more syntax here