用于COUNTIF的Google Sheets模式匹配/RegEx
Google Sheets的模式匹配文档没有帮助。我已经阅读和搜索了一段时间,没有找到这个问题。也许我很难找到正确的搜索词,但问题是: 我有几个数字零件号遵循此格式:- 类别可由零件号定义,即50-03将是一个产品类别,其余2位数字特定于一个型号 我一直在尝试运行以下程序:用于COUNTIF的Google Sheets模式匹配/RegEx,regex,google-sheets,pattern-matching,Regex,Google Sheets,Pattern Matching,Google Sheets的模式匹配文档没有帮助。我已经阅读和搜索了一段时间,没有找到这个问题。也许我很难找到正确的搜索词,但问题是: 我有几个数字零件号遵循此格式:- 类别可由零件号定义,即50-03将是一个产品类别,其余2位数字特定于一个型号 我一直在尝试运行以下程序: =countif(E9:E13,"50-03[123][012]*") E9:E13包含格式化为文本的零件号。如果我以任何其他方式格式化它,这些值就会显示得一团糟,因为Google Sheets认为我在写日期或试图做算术
=countif(E9:E13,"50-03[123][012]*")
E9:E13包含格式化为文本的零件号。如果我以任何其他方式格式化它,这些值就会显示得一团糟,因为Google Sheets认为我在写日期或试图做算术
每次返回0,除非我要更改为:
=countif(E9:E13,"50-03*")
所以看起来通配符是有效的,但模式匹配却不行 如您所述,COUNTIF仅支持通配符 但是有很多方法可以做你想做的事情,仅举2个例子
=ArrayFormula(SUM(--REGEXMATCH(E9:E13, "50-03[123][012]*")))
=COUNTA(FILTER(E9:E13, REGEXMATCH(E9:E13, "50-03[123][012]*")))
对于像您这样的问题,这是一个非常大的难题,但您可以使用QUERY执行以下操作: =查询9:E13,选择计数,其中E匹配“50-03[123][012]”标签计数 标签位用于防止查询向计数列添加自动标题 这种方法的好处在于,您还可以引入其他列。假设在H列中,每个零件都有很多订单。然后,您可以选择两个单元格,并显示零件计数和订单总数: =查询9:H13,选择countE,sumH,其中E匹配“50-03[123][012]”标签countE,sumH
我经常在$searchEngine上找到这个问题,但没有注意到我链接了一个类似的问题和其他相关的答案。COUNTIF不支持正则表达式,只支持通配符:。还请注意,这不计算单元格中的多次出现次数。