一种数据匹配方法及装置制造方法及图纸

技术编号:15791924 阅读:306 留言:0更新日期:2017-07-09 22:37
本申请公开一种数据匹配方法及装置。该方法中,首先获取待匹配字符串和需要匹配的字符串集合,然后分别计算所述字符串集合中的各字符串与所述待匹配字符串的匹配参数,其中,所述匹配参数包括:相似度和/或匹配量,再根据所述匹配参数,确定所述字符串集合中与所述待匹配字符串相匹配的目标字符串。采用本申请公开的方案进行数据匹配,不需要进行匹配的字符串完全相等,既可根据匹配参数确定是否匹配,从而提高了匹配率。

【技术实现步骤摘要】
一种数据匹配方法及装置
本公开涉及数据匹配
,尤其涉及一种数据匹配方法及装置。
技术介绍
随着信息技术的发展,各种信息的数据量不断扩充。为了明确不同数据间的关系,通常需要进行数据匹配。其中,数据匹配指的是在数据之间,按照某种内在关系进行配准。现有技术中,在进行数据匹配时,通常采用全等匹配的方法,该方法中,对两个需要进行匹配的字符串中的各个字符进行逐一比对,若两个字符串完全相等,则认为匹配成功。但是,专利技术人在本申请的研究过程中发现,采用全等匹配方法进行数据匹配时,由于必须两个字符串完全相等,才确认匹配成功,因此该方案匹配率不高,大量数据无法匹配。
技术实现思路
为克服相关技术中存在的问题,本公开提供一种数据匹配方法及装置。为了解决上述技术问题,本专利技术实施例公开了如下技术方案:根据本公开实施例的第一方面,提供一种数据匹配方法,包括:获取待匹配字符串和需要匹配的字符串集合;分别计算所述字符串集合中的各字符串与所述待匹配字符串的匹配参数,其中,所述匹配参数包括:相似度和/或匹配量;根据所述匹配参数,确定所述字符串集合中与所述待匹配字符串相匹配的目标字符串。优选的,若所述匹配参数为相似度,所述分别计算所述字符串集合中的各字符串与所述待匹配字符串的匹配参数,包括:21)从所述字符串集合中任选一个字符串作为计算字符串,并获取所述待匹配字符串的长度str11;22)获取所述计算字符串的长度str21;23)获取所述待匹配字符串和所述计算字符串的最大公共子串,计算所述最大公共子串的长度,并分别获取所述最大公共子串在所述计算字符串和所述待匹配字符串中的数量;24)去除所述计算字符串中包含的最大公共子串,获取新的计算字符串,去除所述匹配字符串中包含的最大公共子串,获取新的匹配字符串,并返回执行步骤23),直到待匹配字符串和计算字符串中不包含最大公共子串,再执行步骤25)的操作;25)根据所述待匹配字符串的长度str11、所述计算字符串的长度str21、各个最大公共子串的长度和所述最大公共子串在所述计算字符串和所述待匹配字符串中的数量,计算所述计算字符串与所述待匹配字符串的相似度;26)从所述字符串集合中选择另一个字符串作为计算字符串,并返回执行步骤22)的操作,直到获取所述字符串集合中包含的所有字符串与所述待匹配字符串的相似度。优选的,采用以下公式计算所述计算字符串与所述待匹配字符串的相似度:其中,str11表示未去除最大公共子串之前,所述待匹配字符串的长度;str21表示未去除最大公共子串之前,所述待计算字符串的长度;mi表示在计算待匹配字符串和计算字符串的匹配参数时,获取到的第i个最大公共子串的长度;ki1表示获取到的第i个最大公共子串在所述待匹配字符串中的数量;ki2表示获取到的第i个最大公共子串在所述待计算字符串中的数量;设定在计算待匹配字符串和计算字符串的匹配参数时,获取到的最大公共子串的个数为a,n表示不小于a的任意数值;L表示所述待匹配字符串和计算字符串的相似度。优选的,若所述匹配参数为匹配度,所述分别计算所述字符串集合中的各字符串与所述待匹配字符串的匹配参数,包括:41)从所述字符串集合中任选一个字符串作为计算字符串;42)获取所述待匹配字符串和所述计算字符串的最大公共子串,计算所述最大公共子串的长度,并分别获取所述最大公共子串在所述计算字符串和所述待匹配字符串中的数量;43)去除所述计算字符串中包含的最大公共子串,获取新的计算字符串,去除所述匹配字符串中包含的最大公共子串,获取新的匹配字符串,并返回执行步骤42),直到待匹配字符串和计算字符串中不包含最大公共子串,再执行步骤44)的操作;44)根据各个最大公共子串的长度和所述最大公共子串在所述计算字符串和所述待匹配字符串中的数量,计算所述计算字符串与所述待匹配字符串的匹配度;45)从所述字符串集合中选择另一个字符串作为计算字符串,并返回执行步骤22)的操作,直到获取所述字符串集合中包含的所有字符串与所述待匹配字符串的相似度。优选的,采用以下公式计算所述计算字符串与所述待匹配字符串的匹配度:其中,mi表示在计算待匹配字符串和计算字符串的匹配参数时,获取到的第i个最大公共子串的长度;ki1表示获取到的第i个最大公共子串在所述待匹配字符串中的数量;ki2表示获取到的第i个最大公共子串在所述待计算字符串中的数量;设定在计算待匹配字符串和计算字符串的匹配参数时,获取到的最大公共子串的个数为a,n表示不小于a的任意数值;E表示所述待匹配字符串和计算字符串的匹配度。根据本公开实施例的第二方面,提供一种数据匹配装置,包括:获取模块,用于获取待匹配字符串和需要匹配的字符串集合;计算模块,用于分别计算所述字符串集合中的各字符串与所述待匹配字符串的匹配参数,其中,所述匹配参数包括:相似度和/或匹配量;确定模块,用于根据所述匹配参数,确定所述字符串集合中与所述待匹配字符串相匹配的目标字符串。优选的,若所述匹配参数为相似度,所述计算模块包括:第一长度获取单元,用于从所述字符串集合中任选一个字符串作为计算字符串,并获取所述待匹配字符串的长度str11;第二长度获取单元,用于获取所述计算字符串的长度str21;第一最大公共子串获取单元,用于获取所述待匹配字符串和所述计算字符串的最大公共子串,计算所述最大公共子串的长度,并分别获取所述最大公共子串在所述计算字符串和所述待匹配字符串中的数量;第一去除单元,用于去除所述计算字符串中包含的最大公共子串,获取新的计算字符串,去除所述匹配字符串中包含的最大公共子串,获取新的匹配字符串,再触发所述第一最大公共子串获取单元执行操作,直到待匹配字符串和计算字符串中不包含最大公共子串,再触发相似度计算单元执行操作;相似度计算单元,用于根据所述待匹配字符串的长度str11、所述计算字符串的长度str21、各个最大公共子串的长度和所述最大公共子串在所述计算字符串和所述待匹配字符串中的数量,计算所述计算字符串与所述待匹配字符串的相似度;第一选择单元,用于从所述字符串集合中选择另一个字符串作为计算字符串,再触发所述第二长度获取单元执行相应操作,直到获取所述字符串集合中包含的所有字符串与所述待匹配字符串的相似度。优选的,所述相似度计算单元采用以下公式计算所述计算字符串与所述待匹配字符串的相似度:其中,str11表示未去除最大公共子串之前,所述待匹配字符串的长度;str21表示未去除最大公共子串之前,所述待计算字符串的长度;mi表示在计算待匹配字符串和计算字符串的匹配参数时,获取到的第i个最大公共子串的长度;ki1表示获取到的第i个最大公共子串在所述待匹配字符串中的数量;ki2表示获取到的第i个最大公共子串在所述待计算字符串中的数量;设定在计算待匹配字符串和计算字符串的匹配参数时,获取到的最大公共子串的个数为a,n表示不小于a的任意数值;L表示所述待匹配字符串和计算字符串的相似度。优选的,若所述匹配参数为匹配度,所述计算模块包括:计算字符串获取单元,用于从所述字符串集合中任选一个字符串作为计算字符串;第二最大公共子串获取单元,用于获取所述待匹配字符串和所述计算字符串的最大公共子串,计算所述最大公共子串的长度,并分别获取所述最大公共子串在所述计算字符串和本文档来自技高网...
一种数据匹配方法及装置

【技术保护点】
一种数据匹配方法,其特征在于,包括:获取待匹配字符串和需要匹配的字符串集合;分别计算所述字符串集合中的各字符串与所述待匹配字符串的匹配参数,其中,所述匹配参数包括:相似度和/或匹配量;根据所述匹配参数,确定所述字符串集合中与所述待匹配字符串相匹配的目标字符串。

【技术特征摘要】
1.一种数据匹配方法,其特征在于,包括:获取待匹配字符串和需要匹配的字符串集合;分别计算所述字符串集合中的各字符串与所述待匹配字符串的匹配参数,其中,所述匹配参数包括:相似度和/或匹配量;根据所述匹配参数,确定所述字符串集合中与所述待匹配字符串相匹配的目标字符串。2.根据权利要求1所述的方法,其特征在于,若所述匹配参数为相似度,所述分别计算所述字符串集合中的各字符串与所述待匹配字符串的匹配参数,包括:21)从所述字符串集合中任选一个字符串作为计算字符串,并获取所述待匹配字符串的长度str11;22)获取所述计算字符串的长度str21;23)获取所述待匹配字符串和所述计算字符串的最大公共子串,计算所述最大公共子串的长度,并分别获取所述最大公共子串在所述计算字符串和所述待匹配字符串中的数量;24)去除所述计算字符串中包含的最大公共子串,获取新的计算字符串,去除所述匹配字符串中包含的最大公共子串,获取新的匹配字符串,并返回执行步骤23),直到待匹配字符串和计算字符串中不包含最大公共子串,再执行步骤25)的操作;25)根据所述待匹配字符串的长度str11、所述计算字符串的长度str21、各个最大公共子串的长度和所述最大公共子串在所述计算字符串和所述待匹配字符串中的数量,计算所述计算字符串与所述待匹配字符串的相似度;26)从所述字符串集合中选择另一个字符串作为计算字符串,并返回执行步骤22)的操作,直到获取所述字符串集合中包含的所有字符串与所述待匹配字符串的相似度。3.根据权利要求2所述的方法,其特征在于,采用以下公式计算所述计算字符串与所述待匹配字符串的相似度:其中,str11表示未去除最大公共子串之前,所述待匹配字符串的长度;str21表示未去除最大公共子串之前,所述待计算字符串的长度;mi表示在计算待匹配字符串和计算字符串的匹配参数时,获取到的第i个最大公共子串的长度;ki1表示获取到的第i个最大公共子串在所述待匹配字符串中的数量;ki2表示获取到的第i个最大公共子串在所述待计算字符串中的数量;设定在计算待匹配字符串和计算字符串的匹配参数时,获取到的最大公共子串的个数为a,n表示不小于a的任意数值;L表示所述待匹配字符串和计算字符串的相似度。4.根据权利要求1所述的方法,其特征在于,若所述匹配参数为匹配度,所述分别计算所述字符串集合中的各字符串与所述待匹配字符串的匹配参数,包括:41)从所述字符串集合中任选一个字符串作为计算字符串;42)获取所述待匹配字符串和所述计算字符串的最大公共子串,计算所述最大公共子串的长度,并分别获取所述最大公共子串在所述计算字符串和所述待匹配字符串中的数量;43)去除所述计算字符串中包含的最大公共子串,获取新的计算字符串,去除所述匹配字符串中包含的最大公共子串,获取新的匹配字符串,并返回执行步骤42),直到待匹配字符串和计算字符串中不包含最大公共子串,再执行步骤44)的操作;44)根据各个最大公共子串的长度和所述最大公共子串在所述计算字符串和所述待匹配字符串中的数量,计算所述计算字符串与所述待匹配字符串的匹配度;45)从所述字符串集合中选择另一个字符串作为计算字符串,并返回执行步骤22)的操作,直到获取所述字符串集合中包含的所有字符串与所述待匹配字符串的相似度。5.根据权利要求4所述的方法,其特征在于,采用以下公式计算所述计算字符串与所述待匹配字符串的匹配度:其中,mi表示在计算待匹配字符串和计算字符串的匹配参数时,获取到的第i个最大公共子串的长度;ki1表示获取到的第i个最大公共子串在所述待匹配字符串中的数量;ki2表示获取到的第i个最大公共子串在所述待计算字符串中的数量;设定在计算待匹配字符串和计算字符串的匹配参数时,获取到的最大公共子串的个数为a,n表示不小于a的任意数值;E表示所述待匹配字符串和计算字符串的匹配度。6.一种数据匹配装置,其特征在于,包括:获取模块,用于获取待匹配字符串和需要匹配的字符串集合;计算模块,用于分别计算...

【专利技术属性】
技术研发人员:皇甫庆彬
申请(专利权)人:优信拍北京信息科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1