计算两个字符串中相同字符的个数

2025-05-13 15:07:37

1、如图表格,判断D列字符有几个与E列的相同,怎么判断呢?第一个方法可尝试利用数组函数解决。

计算两个字符串中相同字符的个数

2、要计算有几个字符相同,先要判断两列中都存在的字符,用IF与LEN函数组合来判断IF(LEN(D4)>LEN(SUBSTITUTE(D4,MID(E4,ROW(INDIRECT("1:"&LEN(E4))),1),""))。

计算两个字符串中相同字符的个数

3、接下来,对符合条件的字符计算出现的次数,利用 1/count 的方法来计算个数1/(LEN(E4)-LEN(SUBSTITUTE(E4,MID(E4,ROW(INDIRECT("1:"&LEN(E4))),1),"")))。

计算两个字符串中相同字符的个数

4、然后把上两步的判断用SUM求和,在F4单元格输入公式=SUM(IF(LEN(D4)-LEN(SUBSTIT炽扃仄呦UTE(D4,MID(E4,ROW(INDIRECT("1:"&LEN(E4))),1),""))>0,1/(LEN(E4)-LEN(SUBSTITUTE(E4,MID(E4,ROW(INDIRECT("1:"&LEN(E4))),1),""))))),按ctrl+shift+回车,得出结果,然后下拉公式。

计算两个字符串中相同字符的个数

5、另外的方法是通过自定义函数,打开VBA编辑器,新建模块,输入如下代码:Function fd(a, b) ta = a.Text多唉捋胝: tb = b.Text Set d = CreateObject("Scripting.Dictionary") For i = 1 To Len(ta) t = Mid(ta, i, 1) d(t) = "_|_" Next For i = 1 To Len(tb) t = Mid(tb, i, 1) If d(t) = "_|_" Then d(t) = t Next fd = Join(Filter(d.items, "_|_", False), "")End Function

计算两个字符串中相同字符的个数

6、利用自定义的fd函数,计算相同字符个数,如图在G4单元格输入公式=fd(D4,E4),然后下拉。

计算两个字符串中相同字符的个数
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢