CN111831869B - 一种字符串的查重方法、装置、终端设备及存储介质 - Google Patents
一种字符串的查重方法、装置、终端设备及存储介质 Download PDFInfo
- Publication number
- CN111831869B CN111831869B CN202010613366.1A CN202010613366A CN111831869B CN 111831869 B CN111831869 B CN 111831869B CN 202010613366 A CN202010613366 A CN 202010613366A CN 111831869 B CN111831869 B CN 111831869B
- Authority
- CN
- China
- Prior art keywords
- character
- character string
- string
- sub
- matching
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000004590 computer program Methods 0.000 claims description 26
- 230000011218 segmentation Effects 0.000 claims description 14
- 238000012216 screening Methods 0.000 abstract description 2
- 238000004422 calculation algorithm Methods 0.000 description 10
- 238000004364 calculation method Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000004044 response Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 239000013598 vector Substances 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
- G06F16/90344—Query processing by using string matching techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9532—Query formulation
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请适用于数据筛选技术领域,提供了一种字符串的查重方法、装置、终端设备及存储介质,该方法包括:获取待查重的两个字符串,其中,所述两个字符串分别为第一字符串和第二字符串;获取匹配窗口,并基于所述匹配窗口分割所述第一字符串,获得两个子字符串;基于所述匹配窗口,计算第一子字符串和所述第二字符串中匹配的字符数量,其中,所述第一子字符串为所述两个子字符串中的任一个;如果所述字符数量小于匹配阈值,则确定所述第一字符串和第二字符串不重复,所述匹配阈值由所述匹配窗口确定;本申请减少了字符的比较数量,使查重更简单,提高了查重的效率和准确率。
Description
技术领域
本申请属于数据筛选技术领域,尤其涉及一种字符串的查重方法、装置、终端设备及存储介质。
背景技术
随着互联网的发展,网络成为人们获取信息的主要来源。随之而来的,网络上的字符串数量也在成千上万的增加。网络上存在的抄袭和转载现象,造成字符串繁杂、重复,大大降低了人们检索的效率。因此,在将网络上的信息存储时,将重复的字符串去除是提高检索效率的方法之一。
目前,字符串的查重方法主要采用SimHash算法、Levenshtein距离算法和布隆过滤器等。SimHash算法对于短字符串的处理能力较差,Levenshtein距离算法的运算时间较长,布隆过滤器在处理大量字符串时误算率高。因此,提高字符串查重时的效率和准确率是目前需要解决的问题。
发明内容
本申请实施例提供了一种字符串的查重方法、装置、终端设备及存储介质,可以解决目前字符串查重效率低和准确率低的问题。
第一方面,本申请实施例提供了一种字符串的查重方法,包括:
获取待查重的两个字符串,其中,所述两个字符串分别为第一字符串和第二字符串;
获取匹配窗口,并基于所述匹配窗口分割所述第一字符串,获得两个子字符串;
基于所述匹配窗口,计算第一子字符串和所述第二字符串中匹配的字符数量,其中,所述第一子字符串为所述两个子字符串中的任一个;
如果所述字符数量小于匹配阈值,则确定所述第一字符串和第二字符串不重复,所述匹配阈值由所述匹配窗口确定。
第二方面,本申请实施例提供了一种字符串的查重装置,包括:
字符串获取模块,用于获取待查重的两个字符串,其中,所述两个字符串分别为第一字符串和第二字符串;
字符串分割模块,用于获取匹配窗口,并基于所述匹配窗口分割所述第一字符串,获得两个子字符串;
计算模块,用于基于所述匹配窗口,计算第一子字符串和所述第二字符串中匹配的字符数量,其中,所述第一子字符串为所述两个子字符串中的任一个;
判断模块,用于如果所述字符数量小于匹配阈值,则确定所述第一字符串和第二字符串不重复,所述匹配阈值由所述匹配窗口确定。
第三方面,本申请实施例提供了一种终端设备,包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述第一方面中任一项所述的字符串的查重方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现上述第一方面中任一项所述的字符串的查重方法。
第五方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述第一方面中任一项所述的字符串的查重方法。
可以理解的是,上述第二方面至第五方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
本申请实施例与现有技术相比存在的有益效果是:本申请首先获取两个字符串和匹配窗口,并基于匹配窗口分割其中一个字符串,得到第一子字符串,然后计算第一子字符串和第二字符串中匹配的字符数量,如果字符数量小于匹配阈值,则确定第一字符串和第二字符串不重复;本申请只需要将第一子字符串与第二字符串相比较,如果第一子字符串与第二字符串中匹配的字符数量小于匹配阈值,则可以判断第一字符串与第二字符串不重复,不用再比较第一字符串中除第一子字符串之外的字符串与第二字符串的重复情况,减少了字符的比较数量,使查重更简单,提高了查重的效率和准确率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一实施例提供的字符串的查重方法的应用场景示意图;
图2是本申请一实施例提供的字符串的查重方法的流程示意图;
图3是本申请一实施例提供的字符数量的获取方法的流程示意图;
图4是本申请一实施例提供的匹配字符串的获取方法的流程示意图;
图5是本申请一实施例提供的第二子字符串与第二字符串的查重方法的流程示意图;
图6是本申请一实施例提供的字符串的查重装置的结构示意图;
图7是本申请一实施例提供的终端设备的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
随着大数据的发展,越来越多的数据通过网络上传或下载,由于数据的转载和借鉴抄袭的,造成大量数据重复,降低了检索效率,因此,对数据的去重是非常必要的。以新闻数据为例,大数据级的新闻去重主要采用SimHash算法、Levenshtein距离算法和布隆过滤器等。SimHash算法通过分词和加权降维等方式将新闻编码为固定长度的向量,再通过位运算加速重复度计算,但是SimHash算法对于短文本的处理效果较差,还会由于位数有限而产生碰撞。相比于SimHash,Levenshtein距离算法能通过设定阈值,筛选出比较相近的新闻,但是在大数据级别新闻上的运行时间较长。布隆过滤器的时间效率较高,随着处理新闻的增加,误算率也随之增加,准确率无法得到保证。因此,目前的数据去重方法均不能满足准确率和效率的要求。
本申请提供的字符串的查重方法,可以快速准确的查找出重复的字符串,进而删除重复的字符串,提高后续的检索。本申请同样适用于新闻的查重,在新闻查重时可以将一个新闻标题看做一个字符串,通过比较新闻标题是否重复,确定新闻是否重复。
图1为本申请实施例提供的字符串的查重方法的应用场景示意图,上述字符串的查重方法可以用于对字符串的查重。其中,存储设备10用于存储字符串信息,处理器20用于获取存储设备10中的字符串信息,并根据字符串信息和预设规则,判断字符串是否重复,进而完成对字符串的查重工作。
以下结合图1对本申请实施例的字符串的查重方法进行详细说明。
图2示出了本申请提供的字符串的查重方法的示意性流程图,参照图2,对该方法的详述如下:
S101,获取待查重的两个字符串,其中,所述两个字符串分别为第一字符串和第二字符串。
在本实施例中,字符串可以包括一个字符、或多个字符,第一字符串和第二字符串可以从外部设备中获取,也可以从数据库中获取,还可以是用户输入的字符串。在对新闻查重时,第一字符串为第一新闻的标题,第二字符串为第二新闻的标题,其中,第一和第二只是为了区分字符串,表示有两个各个不同的字符串,并不表示顺序和限定。
在本实施例中,在进行字符串查重时,还可以将一个字符串设置为基准字符串,另一个字符串作为比较字符串,例如,在向数据库中存储字符串时,需要先查询数据库中存储的字符串是否有与待存储字符串重复的字符串。可以将待存储字符串作为基准字符串,从数据库中取出的字符串作为比较字符串。
S102,获取匹配窗口,并基于所述匹配窗口分割所述第一字符串,获得两个子字符串。
在本实施例中,匹配窗口可以从外部处理器中获取,还可以是用户输入,另外,匹配窗口还可以根据计算模型计算得到。对字符串进行分割时,可以分割第一字符串,也可以分割第二字符串,本步骤中给出的分割第一字符串只是一个实施例,不作为对本申请的限定。
在本实施例中,以分割第一字符串为例进行说明。对第一字符串进行分割时,需要先确定分割点,分割点由匹配窗口确定,并基于分割点分割第一字符串,得到两个子字符串,分别为处于分割点之前的字符串和处于分割点之后的字符串。
S103,基于匹配窗口,计算第一子字符串和所述第二字符串中匹配的字符数量,其中,所述第一子字符串为所述两个子字符串中的任一个。
在本实施例中,匹配窗口指的是两个字符之间的距离,具体的,指两个字符的在各自的字符串中的下标之差。匹配窗口用于确定字符之间是否匹配,具体的,判断来自于第一子字符串的第一字符与来自于第二字符串的第二字符是否匹配,如果第一字符和第二字符是相同的字符,第一字符与第二字符的距离不超过匹配窗口时才可以将第一字符和第二字符确定为匹配。
作为举例,如果第一子字符串为“暴风雨”,第二字符串为“暴雨”,雨在第一子字符串中的下标为2,雨在第二字符串中的下标为1,第一子字符串和第二字符串中字符“雨”的距离为2-1=1。
作为举例,如果匹配窗口为3,第一子字符串为“今日天气好”,第二字符串为“今日可能是好天气”,第一子字符串与第二字符串中相同的字符为“今、日、天、气、好”五个字符。在第一子字符串中今的下标为0,日的下标为1,天的下标为2,气的下标为3,好的下标为4。在第二字符串中今的下标为0,日的下标为1,天的下标为6,气的下标为7,好的下标为5。“今、日、好”三个字符的距离小于3,则第一子字符串和第二字符串中有“今、日、好”三个字符匹配。
S104,如果所述字符数量小于匹配阈值,则确定所述第一字符串和第二字符串不重复,所述匹配阈值由所述匹配窗口确定。
在本实施例中,匹配阈值基于公式确定,max_compare为所述匹配窗口,y为匹配阈值。
在本申请实施例中,如果第一子字符串与第二字符串中的匹配的字符数量小于匹配阈值,则第一字符串与第二字符串的相似度一定小于相似度阈值,所以本申请只需比较第一子字符串和第二字符串中的字符匹配的字符数量与预设匹配阈值的大小,只要匹配的字符数量小于匹配阈值,即可确定第一字符串与第二字符串一定是不重复或不相似的,不需要再进行其他判断。
作为举例,如果匹配窗口为5,则匹配阈值为
如果字符数量为1,则1<2,则不用再进行其他判断步骤即可确定第一字符串和第二字符串不重复,可以将第一字符串和第二字符串中的一个删除。
本申请实施例中,本申请首先获取两个字符串和匹配窗口,并基于匹配窗口分割其中一个字符串,得到第一子字符串,然后计算第一子字符串和第二字符串中匹配字符的字符数量,如果字符数量小于匹配阈值,则确定第一字符串和第二字符串不重复;本申请只需要将第一子字符串与第二字符串相比较,如果第一子字符串与第二字符串中匹配的字符数量小于匹配阈值,则可以判断第一字符串与第二字符串不重复,不用再比较第一字符串中除第一子字符串之外的字符串与第二字符串的重复情况,减少了字符的比较数量,使查重更简单,提高了查重的效率和准确率。
在一种可能的实现方式中,步骤S102中获取匹配窗口,具体可以包括:
基于公式计算匹配窗口,其中,max_compare为所述匹配窗口,S1为所述第一字符串的长度,S2为所述第二字符串的长度。
在本实施例中,第一字符串的长度为第一字符串中包含的字符的数量,例如,第一字符串为“天气晴朗”,则第一字符串中包括4个字符,第一字符串的长度为4。
作为举例,如果第一字符串为“雷雨大风天气”,第二字符串为“短时的降雨”则第一字符串的长度为6,第二字符串的长度为5,匹配窗口为
本申请实施例中,利用两个字符串中长度小的计算匹配窗口,相比较现有技术利用长度大的计算匹配窗口,将匹配窗口的值减小,可以在后续比较中减少匹配的次数。
在一种可能的实现方式中,步骤S102中基于所述匹配窗口分割所述第一字符串,获得两个子字符串,具体可以包括:
将所述第一字符串中的第1个字符至第n个字符作为前段字符串,并将第n+1个字符至最后一个字符作为后段字符串,其中,n>1,且n为所述匹配窗口。
在本实施例中,查找第一字符串中处于匹配窗口位置的字符,并将该字符作为分割点分割第一字符串。第一子字符串既可以是分割点之前的前段字符串,也可以是分割点之后的后段字符串,在此不做限制。
可选的,也可以将第一字符串中下标为0至下标为n-1的字符作为前段字符串,将下标为n至最后一个字符作为后段字符串,其中,n>1,且n为所述匹配窗口。
作为举例,如果第一字符串为“支付宝推动服务业数字化一个月”,匹配窗口为7,则将第一字符串分割为前段字符串“支付宝推动服务”和后段字符串“业数字化一个月”两个子字符串。第一子字符串既可以是“支付宝推动服务”,又可以是“业数字化一个月”。
如图3所示,在一种可能的实现方式中,步骤S103的实现过程可以包括:
S1031,基于第一子字符串中各字符在所述第一字符串中的位置,从所述第二字符串中得到所述第一子字符串中各字符的匹配字符串。
在本实施例中,第一子字符串中各字符在第一字符串中的位置可以是第一子字符串中各字符在第一字符串中的下标。每个字符在字符串中均对应一个下标,字符串中的下标从0开始标记,例如,字符串“水火”的下标为0、1,字符“水”的下标为0,字符“火”的下标为1。由于第一子字符串是由第一字符串中的字符组成的,所以第一子字符串中的每个字符在第一字符串中均对应一个下标。
作为举例,如果第一字符串为“今天有雨”,第一子字符串为“今天”,则第一子字符串中的字符“今”在第一字符串中的第一下标为0,第一子字符串中的“天”在第一字符串中的第一下标为1。
在本实施例中,由于第一子字符串是第一字符串中的一部分,为了查重更简单、速度更快,在第一子字符串中的字符与第二字符串中的字符进行匹配时,可以只选择第二字符串中的部分字符进行匹配,不用每一个字符均进行匹配,因此,在选择匹配字符串时可以根据第一子字符串中的字符的在第一字符串中的下标进行选择,提高了匹配速度。
作为举例,如果第一子字符串为“风雨”,第二字符串为“雷雨交加”,在对字符“风”进行匹配时,可以根据风在第一字符串中的坐标0,选择第二字符串中的“雷雨”或“雷雨交”进行匹配,不用与第二字符中的所有字符均匹配。
具体的,在选择匹配字符串时,除了依据第一子字符串中各字符在第一字符串中的位置之外,第一子字符串在第一字符串中的位置不同,也会影响匹配字符串的选择。
如图4所示,在一种可能的实现方式中,步骤S1031的实现过程可以包括:
S10311,获取所述第一子字符串中的第i个字符在所述第一字符串中的第一下标a。
S10312,在所述第一子字符串为所述前段字符串时,将所述第二字符串中的第1个字符至第a+n+1个字符作为所述第i个字符的匹配字符串,其中,1≤i≤n。
在本实施例中,如果第一子字符串为前段字符串,则需要尽量让第一字符串与第二字符串的前边的字符进行匹配,所以将第二字符串中的第1个字符至第a+n+1个字符作为第i个字符的匹配字符串。
可选的,也就是将第二字符串中下标为0的字符至下标为a+n的字符作为第i个字符的匹配字符串。
作为举例,如果匹配窗口为3,第一字符串为“abcdefg”第一子字符串为“abc”属于前段字符串,第二字符串为“abdemghtr”,第一子字符串中“a”在第一字符串中的下标为0,则第一子字符串中“a”的匹配字符串为“abde”;
第一子字符串中“b”在第一字符串中的下标为1,则第一子字符串中“b”的匹配字符串为“abdem”;
第一子字符串中“c”在第一字符串中的下标为2,则第一子字符串中“c”的匹配字符串为“abdemg”。
S10313,在所述第一子字符串为所述后段字符串时,将所述第二字符串中的第a-n+1个字符至最后一个字符作为所述第i个字符的匹配字符串,其中,1≤i≤m-n,m为所述第一字符串中字符的数量。
可选的,将第二字符串中下标为a-n的字符至最后一个字符作为第i个字符的匹配字符串。
作为举例,如果匹配窗口为3,第一字符串为“abcdefg”第一子字符串为“defg”属于后段字符串,第二字符串为“abdemghtr”,第一子字符串中“d”在第一字符串中的下标为3,则第一子字符串中“d”的匹配字符串为“abdemghtr”;
第一子字符串中“e”在第一字符串中的下标为4,则第一子字符串中“e”的匹配字符串为“bdemghtr”;
第一子字符串中“f”在第一字符串中的下标为5,则第一子字符串中“f”的匹配字符串为“demghtr”;
第一子字符串中“g”在第一字符串中的下标为6,则第一子字符串中“g”的匹配字符串为“emghtr”。
S1032,基于所述匹配窗口,确定所述第一子字符串中各字符与对应的匹配字符串中的字符是否为匹配字符。
在本实施例中,首先,字符是否匹配是针对于两个来自于不同的字符串的字符来说的,且两个来自于不同的字符串的字符是相同的字符。如果两个字符是不同的字符,那这两个字符一定不匹配,例如,字符“雨”和字符“风”是来自两个不同的字符串中的不同字符,那么“雨”和“风”一定是不匹配的。
作为举例,如果第一个字符为“雨”,第二个字符也是“雨”,且第一个字符来自于第一个子字符串,第二个字符来自于第二字符串,则可以比较第一个字符和第二个字符是否匹配。
再次,在两个字符是相同的字符时,基于匹配窗口,确定两个字符是否匹配,如果两个字符之间的距离不超过匹配窗口时才可以将两个字符确定为匹配字符,具体的,请参照步骤S103的解释,在此不再赘述。
在本实施例中,确定了第一子字符串和对应的匹配字符串,可以对第一子字符串中的字符进行逐个匹配,具体的匹配过程为:将第一子字符串中的一个字符与该字符对应的匹配字符串中的字符进行匹配,确定匹配字符串中是否存在与该字符匹配的字符。将第一子字符串中的每个字符均与对应的匹配字符串进行匹配查找,即可得到第一子字符串和第二字符串中匹配的字符数量。
在第一子字符串中的字符与对应的匹配字符串进行匹配时,需要计算第一子字符串中的字符在第一字符串中的下标与匹配字符串中各字符在第二字符串中的下标的差值,如果该差值小于或等于匹配窗口,则确定两个相同的字符匹配,反之则不匹配。
作为举例,如果匹配窗口为2,第一子字符串为“ab”,第一子字符串中“a”对应的匹配字符串为“abd”,则将第一子字符串中“a”与匹配字符串“abd”进行匹配,第一子字符串中“a”在第一字符串中的下标为0,匹配字符串“abd”中的“a”在第二字符串中的下标为1,1-0=1<2,则匹配字符串“abd”中的字符“a”与第一子字符串中“a”匹配。
第一子字符串中“b”对应的匹配字符串为“bdf”,则将第一子字符串中“b”与匹配字符串“bdf”进行匹配,第一子字符串中“b”在第一字符串中的下标为1,匹配字符串“bdf”中的“b”在第二字符串中的下标为4,4-1=3>2,得到匹配字符串“bdf”中的字符“b”与第一子字符串中“b”不匹配。
S1033,获取所述匹配字符的对数,并将所述对数作为所述字符数量。
在本实施例中,第一子字符串中的一个字符与对应的匹配字符串中的一个字符是匹配字符,则两个字符算是一对匹配字符。
如果第一子字符串中的一个字符,在对应的匹配字符串中有多个与之相同的字符均与其相匹配,则该字符与对应的匹配字符串的匹配字符的对数为多个。
作为举例,如果匹配窗口为3,第一子字符串中“a”对应的匹配字符串为“acd”,第一子字符串中“a”在第一字符串中的下标为0,匹配字符串“acd”中的“a”在第二字符串中的下标为0,0-0=0<2,则匹配字符串“acd”中的字符“a”与第一子字符串中“a”为一对匹配字符;
第一子字符串中一个字符“c”的匹配字符串为“cdcd”,第一子字符串中字符“c”在第一字符串中的下标为1,匹配字符串为“cdcd”在第二字符串中的下标分别为“1,2,3,4”。匹配字符串中的第一个“c”与第一子字符串中字符“c”的距离小于3,则匹配字符串中的第一个“c”与第一子字符串中字符“c”是匹配字符;匹配字符串中的第二个“c”与第一子字符串中字符“c”的距离小于3,则匹配字符串中的第二个“c”与第一子字符串中字符“c”是匹配字符。因此,第一子字符串中一个字符“c”与匹配字符串“cdcd”的匹配字符有2对。
综上,匹配字符的对数为3,因此字符数量为3。
本申请实施例中,通过第一子字符串中各字符在第一字符串中的位置,从第二字符串中确定各字符对应的匹配字符串,通过将第一子字符串中的各字符与对应的匹配字符串进行匹配,得到匹配字符的字符数量,在确定字符数量时不用将第一子字符串中各字符均与第二字符串中的各字符进行匹配,即可得到匹配字符的字符数量,减少了匹配的次数。
如图5所示,在一种可能的实现方式中,在步骤S103确定了匹配的字符数量之后,所述方法还可以包括:
S201,如果所述字符数量大于或等于匹配阈值,获取第二子字符串,其中,所述第二子字符串是所述两个子字符串中除所述第一子字符串以外的另一字符串,其中,所述匹配阈值基于公式确定,max_compare为所述匹配窗口,y为匹配阈值,为对/>的值向下取整,例如,/>则向下取整为4。
在本实施例中,如果字符数量大于或等于匹配阈值,则不能确定第一字符串与第二字符串是否重复,需要进行第二子字符串与第二字符串的比较。
如果将前段字符串作为第一子字符串,则后段字符串为第二子字符串,如果将后段字符串作为第一子字符串,则前段字符串为第二子字符串。
S202,计算所述第二子字符串和所述第二字符串的Jaro距离。
在本实施例中,Jaro距离可以根据公式其中,dj为Jaro距离,S′2为第二子字符串的长度,S2为第二字符串的长度,m为第二子字符串和第二字符串中匹配字符的对数,t为字符转换的次数,也就是顺序不同的匹配字符的对数的一半。
作为举例,第二子字符串为“bacde”,第二字符串为“abed”,匹配窗口为1,字符“a”、“b”、“d”都是匹配字符,因此m=3,第二子字符串中“ba”和第二字符串中的“ab”顺序不同,则t=1,所以Jaro距离为0.67。
S203,在所述Jaro距离大于或等于预设的相似度阈值时,确定所述第一字符串与所述第二字符串不重复。
S204,在所述Jaro距离小于所述相似度阈值时,确定所述第一字符串与所述第二字符串重复。
在本实施例中,相似度阈值是根据需要预先设置的,例如,0.9、0.8等。
在一种可能的实现方式中,在步骤S102之前,上述方法还可以包括:
S301,在所述两个字符串中的一个字符串是基准字符串时,确定所述两个字符串中的另一个字符串的长度是否在预设长度范围内。
在本实施例中,基准字符串是一个参照字符串,需要查找是否有与之重复的字符串,如果第一字符串是基准字符串,则第二字符串为另一个需要与基准字符串比较的字符串,如果第二字符串是基准字符串,则第一字符串为另一个需要与基准字符串比较的字符串。
在用上述步骤S102至S104判断两个字符串是否重复之前,可以先判断与基准字符串比较的字符串的长度,如果比较的字符串的长度在预设长度范围内,说明该字符串有可能与基准字符串重复,则继续步骤S102至S104的判断。
S302,在另一个字符串的长度不在预设长度范围内时,确定所述两个字符串不重复,其中,所述预设长度范围为l1为基准字符串的长度,l2为满足预设长度范围的字符串的长度,ratio为相似度阈值。
在本实施例中,如果需要比较的字符串的长度不满足预设长度范围,则可以确定该字符串一定与基准字符串不重复,则无需再进行判断,可以直接排除。
作为举例,如果第一字符串为基准字符串,且长度为6,相似度阈值为0.9,则第二字符串需要满足的长度范围为4<l2<8,如果第二字符串的长度为5,则需要继续步骤S102至S104,如果第二字符串的长度为3或9,则确定第一字符串和第二字符串不重复。
本申请实施例中,通过判断字符串的长度,可以先确定是否还需要继续判断两个字符串是否重复,如果字符串的长度不在预设长度范围内,则该字符串与基准字符串不重复,不需要再继续判断,使用长度的判断可以先删除一部分与基准字符串不重复的字符串,提高查找的速度。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
对应于上文实施例所述的字符串的查重方法,图6示出了本申请实施例提供的字符串的查重装置的结构框图,为了便于说明,仅示出了与本申请实施例相关的部分。
参照图6,该装置400可以包括:字符串获取模块410、字符串分割模块420、计算模块430和判断模块440。
其中,字符串获取模块410,用于获取待查重的两个字符串,其中,所述两个字符串分别为第一字符串和第二字符串;
字符串分割模块420,用于获取匹配窗口,并基于所述匹配窗口分割所述第一字符串,获得两个子字符串;
计算模块430,用于基于所述匹配窗口,计算第一子字符串和所述第二字符串中匹配的字符数量,其中,所述第一子字符串为所述两个子字符串中的任一个;
判断模块440,用于如果所述字符数量小于匹配阈值,则确定所述第一字符串和第二字符串不重复,所述匹配阈值由所述匹配窗口确定。
在一种可能的实现方式中,字符串分割模块420具体可以用于:
基于公式计算所述匹配窗口,其中,max_compare为所述匹配窗口,S1为所述第一字符串的长度,S2为所述第二字符串的长度。
在一种可能的实现方式中,字符串分割模块420具体还可以用于:
将所述第一字符串中的第1个字符至第n个字符作为前段字符串,并将第n+1个字符至最后一个字符作为后段字符串,其中,n>1,且n为所述匹配窗口。
在一种可能的实现方式中,计算模块430具体可以包括:
匹配字符串确定单元,用于基于第一子字符串中各字符在所述第一字符串中的位置,从所述第二字符串中得到所述第一子字符串中各字符的匹配字符串;
判断单元,用于基于所述匹配窗口,确定所述第一子字符串中各字符与对应的匹配字符串中的字符是否为匹配字符;
数量获得单元,用于获取所述匹配字符的对数,并将所述对数作为所述字符数量。
在一种可能的实现方式中,匹配字符串确定单元具体可以用于:
获取所述第一子字符串中的第i个字符在所述第一字符串中的第一下标a;
在所述第一子字符串为所述前段字符串时,将所述第二字符串中的第1个字符至第a+n+1个字符作为所述第i个字符的匹配字符串,其中,1≤i≤n;
在所述第一子字符串为所述后段字符串时,将所述第二字符串中的第a-n+1个字符至最后一个字符作为所述第i个字符的匹配字符串,其中,1≤i≤m-n,m为所述第一字符串中字符的数量。
在一种可能的实现方式中,与计算模块430相连的还包括:
第二子字符串获取模块,用于如果所述字符数量大于或等于匹配阈值,获取第二子字符串,其中,所述第二子字符串是所述两个子字符串中除所述第一子字符串以外的另一字符串,其中,所述匹配阈值基于公式确定,max_compare为所述匹配窗口,y为匹配阈值;
Jaro距离计算模块,用于计算所述第二子字符串和所述第二字符串的Jaro距离;
第一重复判断模块,用于在所述Jaro距离大于或等于预设的相似度阈值时,确定所述第一字符串与所述第二字符串不重复;
第二重复判断模块,用于在所述Jaro距离小于所述相似度阈值时,确定所述第一字符串与所述第二字符串重复。
在一种可能的实现方式中,与字符串分割模块420相连的还包括:
长度确定模块,用于在所述两个字符串中的一个字符串是基准字符串时,确定所述两个字符串中的另一个字符串的长度是否在预设长度范围内;
长度判断模块,用于在另一个字符串的长度不在预设长度范围内时,确定所述两个字符串不重复,其中,所述预设长度范围为 l1为基准字符串的长度,l2为满足预设长度范围的字符串的长度,ratio为相似度阈值;
相应的,在另一个字符串的长度在预设长度范围内时,获取匹配窗口,并基于所述匹配窗口分割所述第一字符串,获得两个子字符串。
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本申请实施例还提供了一种终端设备,参见图7,该终端设备700可以包括:至少一个处理器710、存储器720以及存储在所述存储器720中并可在所述至少一个处理器710上运行的计算机程序,所述处理器710执行所述计算机程序时实现上述任意各个方法实施例中的步骤,例如图2所示实施例中的步骤S101至步骤S104。或者,处理器710执行所述计算机程序时实现上述各装置实施例中各模块/单元的功能,例如图6所示模块410至440的功能。
示例性的,计算机程序可以被分割成一个或多个模块/单元,一个或者多个模块/单元被存储在存储器720中,并由处理器710执行,以完成本申请。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序段,该程序段用于描述计算机程序在终端设备700中的执行过程。
本领域技术人员可以理解,图7仅仅是终端设备的示例,并不构成对终端设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如输入输出设备、网络接入设备、总线等。
处理器710可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器720可以是终端设备的内部存储单元,也可以是终端设备的外部存储设备,例如插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。所述存储器720用于存储所述计算机程序以及终端设备所需的其他程序和数据。所述存储器720还可以用于暂时地存储已经输出或者将要输出的数据。
总线可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(Peripheral Component,PCI)总线或扩展工业标准体系结构(ExtendedIndustry Standard Architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本申请附图中的总线并不限定仅有一根总线或一种类型的总线。
本申请实施例提供的字符串的查重方法可以应用于计算机、平板电脑、笔记本电脑、上网本、个人数字助理(personal digital assistant,PDA)等终端设备上,本申请实施例对终端设备的具体类型不作任何限制。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现上述字符串的查重方法各个实施例中的步骤。
本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行时实现可实现上述字符串的查重方法各个实施例中的步骤。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到拍照装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/网络设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/网络设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (9)
1.一种字符串的查重方法,其特征在于,包括:
获取待查重的两个字符串,其中,所述两个字符串分别为第一字符串和第二字符串;
获取匹配窗口,并基于所述匹配窗口分割所述第一字符串,获得两个子字符串;
基于所述匹配窗口,计算第一子字符串和所述第二字符串中匹配的字符数量,其中,所述第一子字符串为所述两个子字符串中的任一个;
如果所述字符数量小于匹配阈值,则确定所述第一字符串和第二字符串不重复,所述匹配阈值由所述匹配窗口确定;
所述基于所述匹配窗口,计算第一子字符串和所述第二字符串中匹配的字符数量,包括:
判断来自于所述第一子字符串的第一字符与来自于所述第二字符串的第二字符是否匹配;
若所述第一字符和所述第二字符是相同的字符、且所述第一字符与所述第二字符的距离小于或等于所述匹配窗口,确定所述第一字符和所述第二字符相匹配;
基于相匹配的所述第一字符和所述第二字符的个数确定所述第一子字符串和所述第二字符串中匹配的字符数量;
所述获取匹配窗口,包括:
基于公式计算所述匹配窗口,其中,max_compare为所述匹配窗口,S1为所述第一字符串的长度,S2为所述第二字符串的长度。
2.如权利要求1所述的字符串的查重方法,其特征在于,所述基于所述匹配窗口分割所述第一字符串,获得两个子字符串,包括:
将所述第一字符串中的第1个字符至第n个字符作为前段字符串,并将第n+1个字符至最后一个字符作为后段字符串,其中,n>1,且n为所述匹配窗口。
3.如权利要求2所述的字符串的查重方法,其特征在于,所述基于所述匹配窗口,计算第一子字符串和所述第二字符串中匹配的字符数量,包括:
基于第一子字符串中各字符在所述第一字符串中的位置,从所述第二字符串中得到所述第一子字符串中各字符的匹配字符串;
基于所述匹配窗口,确定所述第一子字符串中各字符与对应的匹配字符串中的字符是否为匹配字符;
获取所述匹配字符的对数,并将所述对数作为所述字符数量。
4.如权利要求3所述的字符串的查重方法,其特征在于,所述基于第一子字符串中各字符在所述第一字符串中的位置,从所述第二字符串中得到所述第一子字符串中各字符的匹配字符串,包括:
获取所述第一子字符串中的第i个字符在所述第一字符串中的第一下标a;
在所述第一子字符串为所述前段字符串时,将所述第二字符串中的第1个字符至第a+n+1个字符作为所述第i个字符的匹配字符串,其中,1≤i≤n;
在所述第一子字符串为所述后段字符串时,将所述第二字符串中的第a-n+1个字符至最后一个字符作为所述第i个字符的匹配字符串,其中,1≤i≤m-n,m为所述第一字符串中字符的数量。
5.如权利要求1所述的字符串的查重方法,其特征在于,在所述基于所述匹配窗口,计算第一子字符串和所述第二字符串中匹配的字符数量之后,还包括:
如果所述字符数量大于或等于匹配阈值,获取第二子字符串,其中,所述第二子字符串是所述两个子字符串中除所述第一子字符串以外的另一字符串,其中,所述匹配阈值基于公式确定,max_compare为所述匹配窗口,y为匹配阈值;
计算所述第二子字符串和所述第二字符串的Jaro距离;
在所述Jaro距离大于或等于预设的相似度阈值时,确定所述第一字符串与所述第二字符串不重复;
在所述Jaro距离小于所述相似度阈值时,确定所述第一字符串与所述第二字符串重复。
6.如权利要求1至5任一项所述的字符串的查重方法,其特征在于,在所述获取匹配窗口,并基于所述匹配窗口分割所述第一字符串,获得两个子字符串之前,还包括:
在所述两个字符串中的一个字符串是基准字符串时,确定所述两个字符串中的另一个字符串的长度是否在预设长度范围内;
在另一个字符串的长度不在预设长度范围内时,确定所述两个字符串不重复,其中,所述预设长度范围为l1为基准字符串的长度,l2为满足预设长度范围的字符串的长度,ratio为相似度阈值;
相应的,在另一个字符串的长度在预设长度范围内时,获取匹配窗口,并基于所述匹配窗口分割所述第一字符串,获得两个子字符串。
7.一种字符串的查重装置,其特征在于,包括:
字符串获取模块,用于获取待查重的两个字符串,其中,所述两个字符串分别为第一字符串和第二字符串;
字符串分割模块,用于获取匹配窗口,并基于所述匹配窗口分割所述第一字符串,获得两个子字符串;
计算模块,用于基于所述匹配窗口,计算第一子字符串和所述第二字符串中匹配的字符数量,其中,所述第一子字符串为所述两个子字符串中的任一个;
判断模块,用于如果所述字符数量小于匹配阈值,则确定所述第一字符串和第二字符串不重复,所述匹配阈值由所述匹配窗口确定;
所述计算模块还用于:
判断来自于所述第一子字符串的第一字符与来自于所述第二字符串的第二字符是否匹配;
若所述第一字符和所述第二字符是相同的字符、且所述第一字符与所述第二字符的距离小于或等于所述匹配窗口,确定所述第一字符和所述第二字符相匹配;
基于相匹配的所述第一字符和所述第二字符的个数确定所述第一子字符串和所述第二字符串中匹配的字符数量;
字符串分割模块,还用于基于公式计算所述匹配窗口,其中,max_compare为所述匹配窗口,S1为所述第一字符串的长度,S2为所述第二字符串的长度。
8.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至6任一项所述的字符串的查重方法。
9.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的字符串的查重方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010613366.1A CN111831869B (zh) | 2020-06-30 | 2020-06-30 | 一种字符串的查重方法、装置、终端设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010613366.1A CN111831869B (zh) | 2020-06-30 | 2020-06-30 | 一种字符串的查重方法、装置、终端设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111831869A CN111831869A (zh) | 2020-10-27 |
CN111831869B true CN111831869B (zh) | 2023-11-03 |
Family
ID=72899610
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010613366.1A Active CN111831869B (zh) | 2020-06-30 | 2020-06-30 | 一种字符串的查重方法、装置、终端设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111831869B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113326688A (zh) * | 2021-06-16 | 2021-08-31 | 黑龙江八一农垦大学 | 一种基于思想政治词语查重处理方法和装置 |
CN114780685A (zh) * | 2022-04-28 | 2022-07-22 | 贵州电网有限责任公司 | 一种自动识别缺陷信息录入情况并通过无人机补录的方法 |
CN114996347A (zh) * | 2022-06-24 | 2022-09-02 | 中国电信股份有限公司 | 一种用户画像管理方法、装置、电子设备及存储介质 |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102184195A (zh) * | 2011-04-20 | 2011-09-14 | 北京百度网讯科技有限公司 | 用于获取字符串间相似度的方法、装置和设备 |
CN103559018A (zh) * | 2013-10-23 | 2014-02-05 | 东软集团股份有限公司 | 基于gpu计算的字符串匹配方法和系统 |
CN105095860A (zh) * | 2015-06-30 | 2015-11-25 | 小米科技有限责任公司 | 字符分割方法和装置 |
WO2015178756A1 (en) * | 2014-05-23 | 2015-11-26 | Mimos Berhad | Adaptive-window edit distance algorithm computation |
CN105468588A (zh) * | 2014-05-30 | 2016-04-06 | 华为技术有限公司 | 字符串匹配方法和装置 |
CN107436911A (zh) * | 2017-05-24 | 2017-12-05 | 阿里巴巴集团控股有限公司 | 模糊查询方法、装置及查询系统 |
CN108090047A (zh) * | 2018-01-10 | 2018-05-29 | 华南师范大学 | 一种文本相似度的确定方法及设备 |
CN108170716A (zh) * | 2017-12-04 | 2018-06-15 | 昆明理工大学 | 一种基于人体视觉的文本查重方法 |
CN108363686A (zh) * | 2018-01-12 | 2018-08-03 | 中国平安人寿保险股份有限公司 | 一种字符串分词方法、装置、终端设备及存储介质 |
CN108363729A (zh) * | 2018-01-12 | 2018-08-03 | 中国平安人寿保险股份有限公司 | 一种字符串比较方法、装置、终端设备及存储介质 |
CN108664494A (zh) * | 2017-03-29 | 2018-10-16 | 北京京东尚科信息技术有限公司 | 数据匹配的方法、装置、电子设备和储存介质 |
CN109542785A (zh) * | 2018-11-19 | 2019-03-29 | 北京云测网络科技有限公司 | 一种无效bug确定方法和装置 |
US10296788B1 (en) * | 2016-12-19 | 2019-05-21 | Matrox Electronic Systems Ltd. | Method and system for processing candidate strings detected in an image to identify a match of a model string in the image |
CN109815374A (zh) * | 2018-12-27 | 2019-05-28 | 普华讯光(北京)科技有限公司 | 低压配电网台区名称相似性匹配方法及匹配系统 |
CN109902142A (zh) * | 2019-02-27 | 2019-06-18 | 西安电子科技大学 | 一种基于编辑距离的字符串模糊匹配和查询方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5505234B2 (ja) * | 2010-09-29 | 2014-05-28 | 富士通株式会社 | 文字列比較プログラム、文字列比較装置及び文字列比較方法 |
-
2020
- 2020-06-30 CN CN202010613366.1A patent/CN111831869B/zh active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102184195A (zh) * | 2011-04-20 | 2011-09-14 | 北京百度网讯科技有限公司 | 用于获取字符串间相似度的方法、装置和设备 |
CN103559018A (zh) * | 2013-10-23 | 2014-02-05 | 东软集团股份有限公司 | 基于gpu计算的字符串匹配方法和系统 |
WO2015178756A1 (en) * | 2014-05-23 | 2015-11-26 | Mimos Berhad | Adaptive-window edit distance algorithm computation |
CN105468588A (zh) * | 2014-05-30 | 2016-04-06 | 华为技术有限公司 | 字符串匹配方法和装置 |
CN105095860A (zh) * | 2015-06-30 | 2015-11-25 | 小米科技有限责任公司 | 字符分割方法和装置 |
US10296788B1 (en) * | 2016-12-19 | 2019-05-21 | Matrox Electronic Systems Ltd. | Method and system for processing candidate strings detected in an image to identify a match of a model string in the image |
CN108664494A (zh) * | 2017-03-29 | 2018-10-16 | 北京京东尚科信息技术有限公司 | 数据匹配的方法、装置、电子设备和储存介质 |
CN107436911A (zh) * | 2017-05-24 | 2017-12-05 | 阿里巴巴集团控股有限公司 | 模糊查询方法、装置及查询系统 |
CN108170716A (zh) * | 2017-12-04 | 2018-06-15 | 昆明理工大学 | 一种基于人体视觉的文本查重方法 |
CN108090047A (zh) * | 2018-01-10 | 2018-05-29 | 华南师范大学 | 一种文本相似度的确定方法及设备 |
CN108363729A (zh) * | 2018-01-12 | 2018-08-03 | 中国平安人寿保险股份有限公司 | 一种字符串比较方法、装置、终端设备及存储介质 |
CN108363686A (zh) * | 2018-01-12 | 2018-08-03 | 中国平安人寿保险股份有限公司 | 一种字符串分词方法、装置、终端设备及存储介质 |
CN109542785A (zh) * | 2018-11-19 | 2019-03-29 | 北京云测网络科技有限公司 | 一种无效bug确定方法和装置 |
CN109815374A (zh) * | 2018-12-27 | 2019-05-28 | 普华讯光(北京)科技有限公司 | 低压配电网台区名称相似性匹配方法及匹配系统 |
CN109902142A (zh) * | 2019-02-27 | 2019-06-18 | 西安电子科技大学 | 一种基于编辑距离的字符串模糊匹配和查询方法 |
Non-Patent Citations (1)
Title |
---|
字符串匹配算法比较与分析;严大治;《计算机光盘软件与应用》;第16卷(第2期);138+140 * |
Also Published As
Publication number | Publication date |
---|---|
CN111831869A (zh) | 2020-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111831869B (zh) | 一种字符串的查重方法、装置、终端设备及存储介质 | |
CN108874776B (zh) | 一种垃圾文本的识别方法及装置 | |
CN111460153B (zh) | 热点话题提取方法、装置、终端设备及存储介质 | |
CN110750615B (zh) | 文本重复性判定方法和装置、电子设备和存储介质 | |
CN101149739A (zh) | 一种面向互联网的有意义串的挖掘方法和系统 | |
CN110083832B (zh) | 文章转载关系的识别方法、装置、设备及可读存储介质 | |
CN110633594A (zh) | 一种目标检测方法和装置 | |
CN112395875A (zh) | 一种关键词提取方法、装置、终端以及存储介质 | |
CN115392235A (zh) | 字符匹配方法、装置、电子设备及可读存储介质 | |
CN111460098B (zh) | 文本匹配方法、装置及终端设备 | |
CN113408660B (zh) | 图书聚类方法、装置、设备和存储介质 | |
CN114817651B (zh) | 数据存储方法、数据查询方法、装置和设备 | |
CN112988753A (zh) | 一种数据搜索方法和装置 | |
CN110674635B (zh) | 一种用于文本段落划分的方法和装置 | |
CN114861635A (zh) | 一种中文拼写纠错方法、装置、设备及存储介质 | |
CN113688629A (zh) | 文本去重的方法、装置以及存储介质 | |
CN111062208B (zh) | 一种文件审核的方法、装置、设备及存储介质 | |
CN111222051B (zh) | 一种趋势预测模型的训练方法及装置 | |
CN112926647A (zh) | 模型训练方法、域名检测方法及装置 | |
CN113821630A (zh) | 一种数据聚类的方法和装置 | |
CN116719997A (zh) | 政策信息推送方法、装置及电子设备 | |
CN115292008A (zh) | 用于分布式系统的事务处理方法、装置、设备及介质 | |
CN114417102A (zh) | 文本去重方法、装置和电子设备 | |
CN110929749B (zh) | 文本识别方法、装置、介质及电子设备 | |
CN112905024B (zh) | 单词的音节记录方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |