COUNTIF部分匹配
问题描述:
我正在进行密码审计,并且我试图解决的任务之一是计算用户名在密码中存在的实例数。例如,用户名可能是'mikeb',他们的密码是'mikeb123'。COUNTIF部分匹配
搜索密码中的用户名是很简单的:COUNTIF(A:A, “mikeb”)
我遇到的是如何我检查A1对B1,A2对B2,对这个问题整个列,并加起来B的数量包含A.
目前我使用了一个解决方法,我进行比较,然后计算一个单独的列中的真值的数量。如果可能的话,我想摆脱另一列。
编辑:每请求,虚拟数据:
Username Password Password Contains Username?
Bob BobHasASneakyPa$$word TRUE
Carol No1LikesUCarol TRUE
Admin <>@@[email protected]@<> TRUE
Brian ;Ui6$m8/4??k3&)r7 FALSE
这是我的数据看起来像现在。我使用COUNTIF(A2, “*” & B2 & “*”)> 0第三列,然后做COUNTIF(C:C, “TRUE”)以计数的时间发生这种情况#。理想情况下,我会将这些组合成一个等式。
答
使用
=SUMPRODUCT(--ISNUMBER(SEARCH(A2:A5,B2:B5)))
我已经在你的虚拟数据测试,这和搜索的密码,用户名尝试。它返回3的答案,这与总结你的第三列相同。
你也能做出这样区分大小写的,如果需要,可以通过改变SEARCH
到FIND
+0
作品!谢谢您的帮助! – Tchotchke
一些虚拟数据将帮助我们 – ManishChristian
只是隐藏自己的第三列,假装它不存在 – Tom
嗯,这是我在做什么,现在。任何需要两步的东西,我看它是否可以在一个中完成。 – Tchotchke