如何使用数组公式按行计算部分匹配项?

How to count partial matches by row using an arrayformula?

我的问题扩展了这里的问题。 ()

我想计算每行的部分匹配项。我试过使用 * 作为通配符,但我得到了很大的零。
如果我只想计算“NP”的精确匹配项,则此方法有效。
={"NP 计数";arrayformula(if(len(A3:A),COUNTIF(if(F3:G="NP",row(F3:F)),row(F3:F)),))}

列 B:D 被隐藏。

ID# (A) NP Count(E) Date 1(F) Date 2(G)
12345 1 NP-PM NP
67890 0 NP-PC
24680 2 NP NP

NP 计数应为 2、1、2。

尝试:

=INDEX(MMULT(N(REGEXMATCH(INDIRECT("C2:D"&MAX(ROW(A2:A)*(A2:A<>""))), "NP")), {1;1}))