access 日期交集_【Access示例】两个字符串之间的相似性分析/两个字符串之间的比对...

本文介绍了如何使用Access进行两个字符串的比对,通过计算交集和并集的比例来评估它们的相似性。提供了一个名为StrLike的函数示例,用于计算字符串的Jaccard相似度。
摘要由CSDN通过智能技术生成

时 间:2018-06-22 08:32:23

作 者:摘 要:最近遇到一个问题,就是关于两个字符串比对的问题,该如何去比对,比对得到的一个比例是否有参考意义,也请教了一位大神,大神给了一些思路,有了大神的帮助解决问题自然就变得简单了。

正 文:

两个字符串比较思路:假设Expression为被比较的字符串,FindString 为去比较的字符串,得到FindString字符串与Expression字符串相同字符的数量=A;FindString字符串与Expression字符串并集的长度=B,最后得到比例=A/B

首先计算出A和B的交(A ∩ B),以及A和B的并 (A ∪ B),Jaccard Similarity J(A,B)=|Intersecion(A,B)|/|Union(A,B)|

例:Expression=增城玲龙宠物医院,FindString=增城新宠兽医诊所,两个字符串交集的长度为4,两个字符串并集的长度为12,结果4/12≈33.33%

Function StrLike(ByVal Expression As String, ByVal FindString) As Single

Dim intCounter As Integer

Dim intI As Integer

If Trim(FindString) = "" Then Exit Function

FindString = Replace(FindString, " ", "")

For intI = 1 To Len(FindString)

If InStr(1, Expression, Mid(FindString, intI, 1)) > 0 Then

intCounter = intCounter + 1

End If

Next

StrLike = intCounter / (Len(Expression) + Len(FindString) - intCounter)

End Function

附   件:

图   示:

111e31fcb3e758a4c47b47655fde51b1.png

Access软件网QQ交流群(群号:39785885)

Access源码网店

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值