CN113641731B - 模糊搜索优化方法、装置、电子设备和可读存储介质 - Google Patents
模糊搜索优化方法、装置、电子设备和可读存储介质 Download PDFInfo
- Publication number
- CN113641731B CN113641731B CN202110943576.1A CN202110943576A CN113641731B CN 113641731 B CN113641731 B CN 113641731B CN 202110943576 A CN202110943576 A CN 202110943576A CN 113641731 B CN113641731 B CN 113641731B
- Authority
- CN
- China
- Prior art keywords
- word
- searched
- stored
- processing
- preset
- 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
Images
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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2468—Fuzzy queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/31—Indexing; Data structures therefor; Storage structures
- G06F16/316—Indexing structures
- G06F16/319—Inverted lists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Fuzzy Systems (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Automation & Control Theory (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供一种模糊搜索优化方法、装置、电子设备和可读存储介质,针对号码库中的各个已存号码,将已存号码按预设位数进行移位分词处理,得到至少一个第一类索引词,再将已存号码进行倒序处理,得到第二类索引词。此外,将已存号码作为第三类索引词,并将至少一个第一类索引词、第二类索引词和第三类索引词,构成已存号码对应的待搜索词集。本方案中,可以按实际应用场景进行分词,避免现有的进行全量分词存在的占用过多存储空间的问题,且通过倒序处理,可在匹配时避免由于不同号码类别在前缀上的差异对匹配造成的干扰,如此,可在避免占用过多空间的基础上,保障后续的检索准确性、快捷性。
Description
技术领域
本发明涉及计算机模糊搜索技术领域,具体而言,涉及一种模糊搜索优化方法、装置、电子设备和可读存储介质。
背景技术
在数据的搜索处理领域中,主要包括全文搜索方式和模糊搜索方式,其中,全文搜索方式主要是对每一个词建立一个索引,指明该词在词库中的位置以及出现的次数。当用户查询时,检索程序根据事先建立的索引进行查找,并将查找的结果反馈给用户。而模糊搜索方式允许被搜索信息和搜索提问之间存在一定的差异,即做到搜索内容和被匹配内容做到部分的匹配。
目前,在对于号码查询搜索处理中,由于号码的表达形式各种各样,对于查询检索造成困扰。现有的常用处理方式包括,例如将所有的号码进行标准化处理后进行存储,以供查询检索。这种方式需要明确知道各个号码所属的地区,否则难以做到准确的标准化处理。此外,还有采用利用如Elastic search的正则模糊搜索方式,这种方式存在搜索效率低下、搜索缓慢的缺陷。另外,还有采用n-gram的分词处理得到全量的分词结果,以供查询搜索的方式。这种方式会产生大量的额外数据,导致占用大量的存储空间的问题。
发明内容
本发明的目的包括,例如,提供了一种模糊搜索优化方法、装置、电子设备和可读存储介质,其能够避免占用过多存储资源的情况下保障检索的准确性和快捷性。
本发明的实施例可以这样实现:
第一方面,本发明提供一种模糊搜索优化方法,所述方法包括:
针对号码库中的各个已存号码,将所述已存号码按预设位数进行移位分词处理,得到至少一个第一类索引词;
将所述已存号码进行倒序处理,得到第二类索引词;
将所述已存号码作为第三类索引词,并将所述至少一个第一类索引词、第二类索引词和第三类索引词,构成所述已存号码对应的待搜索词集。
在可选的实施方式中,所述方法还包括:
获取待搜索号码;
将所述待搜索号码进行倒序处理,得到倒序号码;
基于所述待搜索号码和倒序号码,对所述号码库中各所述待搜索词集包含的索引词进行匹配,得到匹配结果。
在可选的实施方式中,各所述已存号码包含多个元素;
所述将所述已存号码按预设位数进行移位分词处理,得到至少一个第一类索引词的步骤之前,所述方法还包括:
识别出所述已存号码中包含的多个元素中的字符元素;
将所述已存号码中除各个字符元素之外的其他元素删除;
将删除处理后剩余的各个字符元素按原本在所述已存号码中的顺序进行拼接组合。
在可选的实施方式中,所述将所述已存号码按预设位数进行移位分词处理,得到至少一个第一类索引词的步骤,包括:
将所述已存号码按从右到左的顺序,依次按预设最小位数到预设最大位数的分词方式对所述已存号码进行移位分词处理,得到至少一个第一类索引词;
其中,所述预设最小位数和所述预设最大位数为根据所述号码库中包含的所有已存号码各自的位数所确定。
在可选的实施方式中,所述基于所述待搜索号码和倒序号码,对所述号码库中各所述待搜索词集包含的索引词进行匹配,得到匹配结果的步骤,包括:
在所述倒序号码的末尾添加预设后缀信息;
基于添加预设后缀信息后的倒序号码以及所述待搜索号码,对所述号码库中各所述待搜索词集包含的索引词进行匹配,得到匹配结果。
在可选的实施方式中,所述预设后缀信息为对预设前缀信息进行倒序处理后得到,所述预设前缀信息包括各个地区的区号在不同表示形式下的信息。
在可选的实施方式中,所述将所述待搜索号码进行倒序处理的步骤之前,所述方法还包括:
识别出所述待搜索号码中包含的字符元素;
将所述待搜索号码中除所述字符元素之外的其他元素删除;
将删除处理后剩余的字符元素按原本在所述待搜索号码中的顺序进行拼接组合。
第二方面,本发明提供一种模糊搜索优化装置,所述装置包括:
第一处理模块,用于针对号码库中的各个已存号码,将所述已存号码按预设位数进行移位分词处理,得到至少一个第一类索引词;
第二处理模块,用于将所述已存号码进行倒序处理,得到第二类索引词;
构成模块,用于将所述已存号码作为第三类索引词,并将所述至少一个第一类索引词、第二类索引词和第三类索引词,构成所述已存号码对应的待搜索词集。
第三方面,本发明提供一种电子设备,包括一个或多个存储介质和一个或多个与存储介质通信的处理器,一个或多个存储介质存储有处理器可执行的机器可执行指令,当电子设备运行时,处理器执行所述机器可执行指令,以执行前述实施方式中任意一项所述的方法步骤。
第四方面,本发明提供一种计算机可读存储介质,所述计算机可读存储介质存储有机器可执行指令,所述机器可执行指令被执行时实现前述实施方式中任意一项所述的方法步骤。
本发明实施例的有益效果包括,例如:
本申请提供一种模糊搜索优化方法、装置、电子设备和可读存储介质,针对号码库中的各个已存号码,将已存号码按预设位数进行移位分词处理,得到至少一个第一类索引词,再将已存号码进行倒序处理,得到第二类索引词。此外,将已存号码作为第三类索引词,并将至少一个第一类索引词、第二类索引词和第三类索引词,构成已存号码对应的待搜索词集。本方案中,通过按预设位数进行移位分词处理的方式,可以按实际应用场景进行分词,避免现有的进行全量分词存在的占用过多存储空间的问题,并且,进行倒序处理,可以在匹配时避免由于不同号码类别在前缀上的差异对匹配造成的干扰,如此,结合倒序得到的索引词、分词处理的索引词以及原本的号码构成待搜索词集,在避免占用过多空间的基础上,保障后续的检索准确性、快捷性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的模糊搜索优化方法的流程图;
图2为本申请实施例提供的模糊搜索优化方法中,元素滤除方法的流程图;
图3为本申请实施例提供的模糊搜索优化方法的另一流程图;
图4为本申请实施例提供的模糊搜索优化方法中,元素滤除方法的另一流程图;
图5为图3中步骤S230包含的子步骤的流程图;
图6为本申请实施例提供的电子设备的结构框图;
图7为本申请实施例提供的模糊搜索优化装置的功能模块框图。
图标:110-处理器;120-存储器;130-多媒体组件;140-I/O接口;150-通信组件;200-模糊搜索优化装置;210-第一处理模块;220-第二处理模块;230-构成模块。
具体实施方式
在现有的号码处理方案中,例如针对电话号码的处理方案中,由于电话号码在书写格式上存在多种不同的规范,因此,在处理检索上造成困扰。例如,电话号码常见的规范格式包括:INTERNATIONAL(区号+电话号码):+86 23 8888 888 88;NATIONAL:086 238 888888 88;E164:+8623888888888。
而除了上述比较规范的格式外,在人们日常的使用中,还存在其他的一些书写格式,例如:不带区号:23888888888;带区号:008623888888888;带区号+空格:008623888888888。可见,电话号码在书写上存在多种多样的格式。
此外,对于全球电话号码格式也没有一个相对统一的长度和格式规范,比如A地区的电话号码,其长度为10位,加上国际区位码1,则电话号码长度总共为11位。此外,B地区的电话号码本身具有11位。如此,针对例如25112233445的电话号码,若没有上下文语义,很难确定其是A地区的电话号码还是B地区的电话号码,从而很难进一步将其转换为标准格式:+25112233445或者+86 25112233445。
由于上述所存在的电话号码的不同格式的存在,将导致在数据存储的格式与搜索的格式不一致,从而导致搜索不出结果的现象。
目前常用的处理方式包括,第一种方式,将所有的电话号码通过标准化处理,将其转换为标准的格式,如上述的INTERNATIONAL、NATIONAL、E164中的一种。第二种方式,将电话号码不作任何处理,保持原格式存储,后续采用Elasticsearch的正则模糊搜索,用「*+电话号码」去匹配。第三种方式,采用n-gram的模式,将电话号码进行全量的分词处理,例如,对于电话号码23612345678,采用n-gram将其标记为2,23,236,2361,23612,236123,2361234,23612345,236123456,2361234567,23612345678的格式,然后进行搜索。
上述第一种方式,其前提是需要知道电话号码所属的地区,在不能判断电话号码所属地区的前提下,采用强制的转换方式,会出现处理错误的问题。第二种方式中,采用Elasticsearch前缀正则匹配「*+电话号码」,其存在搜索效率低下,搜索慢的问题。第三种处理方式中,n-gram的分词处理,产生了大量的额外数据,其增加了大量的存储空间。
基于上述研究发现,本申请提供一种模糊搜索优化方案,通过按预设位数进行移位分词处理的方式,可以按实际应用场景进行分词,避免现有的进行全量分词存在的占用过多存储空间的问题,并且,进行倒序处理,可以在匹配时避免由于不同号码类别在前缀上的差异对匹配造成的干扰,如此,结合倒序得到的索引词、分词处理的索引词以及原本的号码构成待搜索词集,在避免占用过多空间的基础上,保障后续的检索准确性、快捷性。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在本发明的描述中,需要说明的是,若出现术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
需要说明的是,在不冲突的情况下,本发明的实施例中的特征可以相互结合。
请参阅图1,为本申请实施例提供的模糊搜索优化方法的流程图,该模糊搜索优化方法有关的流程所定义的方法步骤可以由具备数据分析处理功能的电子设备所实现。下面将对图1所示的具体流程进行详细阐述。
步骤S110,针对号码库中的各个已存号码,将所述已存号码按预设位数进行移位分词处理,得到至少一个第一类索引词。
步骤S120,将所述已存号码进行倒序处理,得到第二类索引词。
步骤S130,将所述已存号码作为第三类索引词,并将所述至少一个第一类索引词、第二类索引词和第三类索引词,构成所述已存号码对应的待搜索词集。
本实施例中,所述的号码库可以是电话号码库,当然也可以应用于其他类型的号码的处理,本实施例中以电话号码为例进行说明。号码库中的已存号码可以是基于用户的存储操作存储在电子设备中的,也可以是在响应用户的其他一些操作后,电子设备所自动记录的,对此本实施例不作具体限制。
由于不同区域的电话号码的位数不同,如有些区域的电话号码为11位,有些地方的电话号码为10位等,并且,存入号码库中的已存号码实质并不能确定其目前的位数是否为其准确的位数。例如,现有的一个已存号码为一个12位的号码,但是并不能确定其是否本身实际为11位号码,只是由于输入错误,导致保存的是一个12位的号码,或者其本身实际为10位号码、9位号码等。
因此,本实施例中,对于号码库中的每个已存号码,可以按预设位数对已存号码进行移位分词处理,也即,将已存号码分词为多个不同位数的第一类索引词。如此,则可以避免由于上述的输入错误等原因,导致号码位数不准确,影响后续查询匹配的问题。
此外,由于不同区域的电话号码的前缀,例如区号等不相同,并且,即使相同的区号在书写方式上也可能不同。因此,如果从电话号码的前端开始匹配,若遇到不同书写方式下的号码的匹配时,则一开始就无法匹配成功,影响匹配的准确性。
因此,本实施例中,还将每个已存号码进行倒序处理,得到第二类索引词。由于第二类索引词是对已存号码进行倒序处理得到的,则后续在匹配时,可以从已存号码的后端开始匹配,一定程度上降低由于不同区域的区号等书写方式不同而影响匹配的问题。
为了进一步丰富以供后续查询匹配的形式,在本实施例中,还将已存号码作为第三类索引词。将至少一个第一类索引词、第二类索引词和第三类索引词,构成已存号码对应的待搜索词集。
如此,通过按预设位数进行移位分词处理的方式,可以按实际应用场景进行分词,避免现有的进行全量分词存在的占用过多存储空间的问题,并且,进行倒序处理,可以在匹配时避免由于不同号码类别在前缀上的差异对匹配造成的干扰。如此,结合倒序得到的索引词、分词处理的索引词以及原本的号码构成待搜索词集,在避免占用过多空间的基础上,保障后续的检索准确性、快捷性。
本实施例中,各个已存号码包含多个元素,其中,字符元素才是核心内容,其他的元素是噪音,对查询匹配造成干扰。因此,请参阅图2,本实施例中,为了避免噪音造成的干扰,在进行上述的移位分词处理、倒序处理等之前,可首先通过以下方式对已存号码进行处理:
步骤S101,识别出所述已存号码中包含的多个元素中的字符元素。
步骤S102,将所述已存号码中除各个字符元素之外的其他元素删除。
步骤S103,将删除处理后剩余的各个字符元素按原本在所述已存号码中的顺序进行拼接组合。
本实施例中,号码库中的各个已存号码中除了包含字符元素之后,还可能包含其他的元素,例如空格、符号、标号等元素。例如,具体的形式可如以下书写形式:2-(800)5551234、+86 2362435647。
已存号码中除字符元素之外的其他元素,对于查询匹配并无帮助,并且,还存在干扰查询匹配的缺陷。因此,本实施例中,可以通过字符识别的方式,识别出已存号码中的字符元素,再将上述的例如空格、加号、减号、括号等元素删除。并将剩下的字符元素拼接组合在一起。
例如,对于2-(800)555 1234,按上述方式处理后得到的形式为28005551234,而+86 2362435647,按上述方式处理后得到的形式为862362435647。
在通过上述处理后,针对处理后得到的各个已存号码,可执行上述的移位分词处理和倒序处理。
本实施例中,在对已存号码进行移位分词处理的步骤中,可以预先统计号码库中所有已存号码的位数,如此,可以确定真实的电话号码可能具有的位数。因为电话号码一般会集中在多个位数下,例如7位、8位、11位等,而不太可能为2位、3位等。
而现有技术中,在进行分词处理时,往往是进行全量的分词,也即,针对的电话号码有多少位,则对电话号码每一位均进行移位分词,包括如上述的2位、3位等。这种方式会产生一些不必要的分词结果,并且,这些不必要的分词结果对于查询匹配并无任何帮助,相反地,会对查询匹配造成干扰。
因此,本实施例中,可首先根据号码库中包含的所有已存号码各自的位数确定预设最小位数和预设最大位数,例如,对号码库中所有已存号码的位数进行统计后,其中最小位数的已存号码为7位,最小位数的已存号码为11位。则相应地预设最小位数可为7位,预设最大位数可为11位。
在上述移位分词处理的步骤中,可将已存号码按从右到左的顺序,依次按预设最小位数到预设最大位数的分词方式对已存号码进行移位分词处理,得到至少一个第一类索引词。
详细地,在该步骤中,可按逆向最小匹配的分词方式,从右到左按公式W=m+i进行分词,其中,m为预设最小位数,i为可变位数。由上述可知,实际场景下,电话号码最短为7位,因此m可取7,而最长电话号码可为11位,因此,可变位数可为i=0,1,2,3,4。
例如,针对号码库中一个已存号码8623612345678,则移位分词处理之后,得到的结果可为2345678、12345678、612345678、3612345678、23612345678。
而在上述的对已存号码进行倒序处理的步骤中,例如已存号码为8623612345678,则倒序处理后的第二类索引词为8765432163268。
如此,得到的已存号码的待搜索词集中包含的所有号码为2345678、12345678、612345678、3612345678、23612345678、8765432163268、8623612345678。
本实施例中,对于号码库中的每个已存号码,均按上述的处理方式进行处理,并将处理得到的各个已存号码的待搜索词集进行存储。
请参阅图3,在实际进行搜索匹配时,可按以下方式得到匹配结果:
步骤S210,获取待搜索号码。
步骤S220,将所述待搜索号码进行倒序处理,得到倒序号码。
步骤S230,基于所述待搜索号码和倒序号码,对所述号码库中各所述待搜索词集包含的索引词进行匹配,得到匹配结果。
由上述可知,由于不同区域的号码的前缀可能不同,因此,若按从左到右的方式进行匹配,则可能由于前缀在书写形式上的差异,直接一开始就无法匹配。因此,在本实施例中,可将待搜索号码进行倒序处理得到倒序号码。
由于上述得到的各个待搜索词集中包含有分词形式的第一类索引词、倒序形式的第二类索引词以及号码原本格式的第三类索引词。因此,可结合待搜索号码以及倒序号码,对号码库中各个待搜索词集中的索引词进行匹配,可以从号码原本完整形式以及号码倒序形式进行搜索匹配,从不同角度相结合进行匹配,使得匹配速度更快、也更容易找到匹配的对象。
本实施例中,用户所输入的待搜索号码可能在形式上各种各样,并且,同样地,其中可能包含一些除字符元素之外的其他元素,如空格、标号等。这些元素对于搜索匹配并无帮助,并且,在号码库中的各个索引词预先也进行了字符元素的筛选,因此,请参阅图4,本实施例中,在获得待搜索号码之后,可首先对待搜索号码进行如下处理:
步骤S201,识别出所述待搜索号码中包含的字符元素。
步骤S202,将所述待搜索号码中除所述字符元素之外的其他元素删除。
步骤S203,将删除处理后剩余的字符元素按原本在所述待搜索号码中的顺序进行拼接组合。
本实施例中,假设获得的待搜索号码为2 3612345678,也即,待搜索号码中除了包含多个字符元素外,还包含空格元素。可将其中的空格元素删除,并将剩下的各个字符元素拼接,得到的结果可为23612345678。
然后再针对上述处理后得到的待搜索号码,执行倒序处理,例如,得到的倒序号码可为87654321632。
由上述可知,电话号码可能有不同的书写格式,有些场景下,在电话号码前端可能具有不同地区的区号,在有些场景下,电话号码前端可能并未携带区号。此外,在携带区号且在同一区号的情况下,区号的撰写格式可能也不相同,有些可能书写为+区号,有些可能书写为(区号)。因此,请参阅图5,本实施例中,为了能够准确匹配到号码库中的已存号码,在基于待搜索号码进行搜索时,可以按以下方式实现:
步骤S231,在所述倒序号码的末尾添加预设后缀信息。
步骤S232,基于添加预设后缀信息后的倒序号码以及所述待搜索号码,对所述号码库中各所述待搜索词集包含的索引词进行匹配,得到匹配结果。
本实施例中,根据上述,号码库中待搜索词集的第二类索引词为直接基于已存号码倒序处理后得到,在已存号码带有区号的情况下,则第二索引词的末尾也带有区别,且为倒序形式的区号。
因此,本实施例中,在将待搜索号码倒序处理后,假设待搜索号码未携带区号,则在倒序号码的末尾添加预设后缀信息。而该预设后缀信息为预设前缀信息进行倒序处理后得到的,预设前缀信息包括各个地区的区号在不同表示形式下的信息。例如,针对某个地区,其区号可如下表示形式:+86、(86)。则+86、(86)可为预设前缀信息,则该预设前缀信息倒序处理后得到的预设后缀信息为68+、(68)。
将上述的预设后缀信息添加到倒序号码的末尾,并结合添加后的倒序号码以及待搜索号码,对号码库中的待搜索词集进行搜索,得到匹配结果。
例如,以上述为例,则得到的添加预设后缀新的倒序号码为87654321632*,该*表示多种不同形式的预设后缀信息。可基于87654321632*和23612345678对号码库进行搜索匹配。
在得到匹配结果后可将匹配结果反馈给用户,以供用户查看或者是调用。
图6是根据一示例性实施例示出的一种电子设备的框图。如图6所示,该电子设备可以包括:处理器110,存储器120,多媒体组件130,I/O接口140,以及通信组件150。
其中,处理器110用于控制该电子设备的整体操作,以完成上述的模糊搜索优化方法的全部或部分步骤。存储器120用于存储各种类型的数据以支持在该电子设备的操作,这些数据例如可以包括用于在该电子设备上操作的任何处理软件或方法的指令,以及处理软件相关的数据。
该存储器120可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-OnlyMemory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。
多媒体组件130可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器120或通过通信组件150发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口140为处理器110和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件150用于该电子设备与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near Field Communication,简称NFC),2G、3G或4G,或它们中的一种或几种的组合,因此相应的该通信组件150可以包括:Wi-Fi模块,蓝牙模块,NFC模块。
在一示例性实施例中,电子设备可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器110(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器110或其他电子元件实现,用于执行上述的构建方法。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,例如包括程序指令的存储器120,上述程序指令可由电子设备的处理器110执行以完成上述的模糊搜索优化方法。
请参阅图7,本申请实施例还提供一种模糊搜索优化装置200,该模糊搜索优化装置200可以理解为上述电子设备,或电子设备的处理器110,也可以理解为独立于上述电子设备或处理器110之外的在电子设备控制下实现上述模糊搜索优化方法的软件功能模块。
如图7所示,上述模糊搜索优化装置200可以包括第一处理模块210、第二处理模块220和构成模块230。下面分别对该装置的各个功能模块的功能进行详细阐述。
第一处理模块210,用于针对号码库中的各个已存号码,将所述已存号码按预设位数进行移位分词处理,得到至少一个第一类索引词;
可以理解,该第一处理模块210可以用于执行上述步骤S110,关于该第一处理模块210的详细实现方式可以参照上述对步骤S110有关的内容。
第二处理模块220,用于将所述已存号码进行倒序处理,得到第二类索引词;
可以理解,该第二处理模块220可以用于执行上述步骤S120,关于该第二处理模块220的详细实现方式可以参照上述对步骤S120有关的内容。
构成模块230,用于将所述已存号码作为第三类索引词,并将所述至少一个第一类索引词、第二类索引词和第三类索引词,构成所述已存号码对应的待搜索词集。
可以理解,该构成模块230可以用于执行上述步骤S130,关于该构成模块230的详细实现方式可以参照上述对步骤S130有关的内容。
在一种可能的实现方式中,所述模糊搜索优化装置200还包括搜索匹配模块,该搜索匹配模块用于:
获取待搜索号码;
将所述待搜索号码进行倒序处理,得到倒序号码;
基于所述待搜索号码和倒序号码,对所述号码库中各所述待搜索词集包含的索引词进行匹配,得到匹配结果。
在一种可能的实现方式中,各所述已存号码包含多个元素;所述模糊搜索优化装置200还包括滤除模块,该滤除模块用于:
识别出所述已存号码中包含的多个元素中的字符元素;
将所述已存号码中除各个字符元素之外的其他元素删除;
将删除处理后剩余的各个字符元素按原本在所述已存号码中的顺序进行拼接组合。
在一种可能的实现方式中,上述第一处理模块210具体可以用于:
将所述已存号码按从右到左的顺序,依次按预设最小位数到预设最大位数的分词方式对所述已存号码进行移位分词处理,得到至少一个第一类索引词;
其中,所述预设最小位数和所述预设最大位数为根据所述号码库中包含的所有已存号码各自的位数所确定。
在一种可能的实现方式中,上述搜索匹配模块具体可以用于:
在所述倒序号码的末尾添加预设后缀信息;
基于添加预设后缀信息后的倒序号码以及所述待搜索号码,对所述号码库中各所述待搜索词集包含的索引词进行匹配,得到匹配结果。
在一种可能的实现方式中,所述预设后缀信息为对预设前缀信息进行倒序处理后得到,所述预设前缀信息包括各个地区的区号在不同表示形式下的信息。
在一种可能的实现方式中,上述搜索匹配模块还可以用于:
识别出所述待搜索号码中包含的字符元素;
将所述待搜索号码中除所述字符元素之外的其他元素删除;
将删除处理后剩余的字符元素按原本在所述待搜索号码中的顺序进行拼接组合。
关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。
综上所述,本申请实施例提供的模糊搜索优化方法、装置、电子设备和可读存储介质,针对号码库中的各个已存号码,将已存号码按预设位数进行移位分词处理,得到至少一个第一类索引词,再将已存号码进行倒序处理,得到第二类索引词。此外,将已存号码作为第三类索引词,并将至少一个第一类索引词、第二类索引词和第三类索引词,构成已存号码对应的待搜索词集。本方案中,通过按预设位数进行移位分词处理的方式,可以按实际应用场景进行分词,避免现有的进行全量分词存在的占用过多存储空间的问题,并且,进行倒序处理,可以在匹配时避免由于不同号码类别在前缀上的差异对匹配造成的干扰,如此,结合倒序得到的索引词、分词处理的索引词以及原本的号码构成待搜索词集,在避免占用过多空间的基础上,保障后续的检索准确性、快捷性。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (9)
1.一种模糊搜索优化方法,其特征在于,所述方法包括:
针对号码库中的各个已存号码,将所述已存号码按预设位数进行移位分词处理,得到至少一个第一类索引词,其中,移位分词处理为逆向最小匹配分词处理;
将所述已存号码进行倒序处理,得到第二类索引词;
将所述已存号码作为第三类索引词,并将所述至少一个第一类索引词、第二类索引词和第三类索引词,构成所述已存号码对应的待搜索词集;
获取待搜索号码,将所述待搜索号码进行倒序处理,得到倒序号码;
基于所述待搜索号码和倒序号码,对所述号码库中各所述待搜索词集包含的索引词进行匹配,得到匹配结果。
2.根据权利要求1所述的模糊搜索优化方法,其特征在于,各所述已存号码包含多个元素;
所述将所述已存号码按预设位数进行移位分词处理,得到至少一个第一类索引词的步骤之前,所述方法还包括:
识别出所述已存号码中包含的多个元素中的字符元素;
将所述已存号码中除各个字符元素之外的其他元素删除;
将删除处理后剩余的各个字符元素按原本在所述已存号码中的顺序进行拼接组合。
3.根据权利要求1所述的模糊搜索优化方法,其特征在于,所述将所述已存号码按预设位数进行移位分词处理,得到至少一个第一类索引词的步骤,包括:
将所述已存号码按从右到左的顺序,依次按预设最小位数到预设最大位数的分词方式对所述已存号码进行移位分词处理,得到至少一个第一类索引词;
其中,所述预设最小位数和所述预设最大位数为根据所述号码库中包含的所有已存号码各自的位数所确定。
4.根据权利要求1所述的模糊搜索优化方法,其特征在于,所述基于所述待搜索号码和倒序号码,对所述号码库中各所述待搜索词集包含的索引词进行匹配,得到匹配结果的步骤,包括:
在所述倒序号码的末尾添加预设后缀信息;
基于添加预设后缀信息后的倒序号码以及所述待搜索号码,对所述号码库中各所述待搜索词集包含的索引词进行匹配,得到匹配结果。
5.根据权利要求4所述的模糊搜索优化方法,其特征在于,所述预设后缀信息为对预设前缀信息进行倒序处理后得到,所述预设前缀信息包括各个地区的区号在不同表示形式下的信息。
6.根据权利要求1所述的模糊搜索优化方法,其特征在于,所述将所述待搜索号码进行倒序处理的步骤之前,所述方法还包括:
识别出所述待搜索号码中包含的字符元素;
将所述待搜索号码中除所述字符元素之外的其他元素删除;
将删除处理后剩余的字符元素按原本在所述待搜索号码中的顺序进行拼接组合。
7.一种模糊搜索优化装置,其特征在于,所述装置包括:
第一处理模块,用于针对号码库中的各个已存号码,将所述已存号码按预设位数进行移位分词处理,得到至少一个第一类索引词,其中,移位分词处理为逆向最小匹配分词处理;
第二处理模块,用于将所述已存号码进行倒序处理,得到第二类索引词;
构成模块,用于将所述已存号码作为第三类索引词,并将所述至少一个第一类索引词、第二类索引词和第三类索引词,构成所述已存号码对应的待搜索词集;
搜索匹配模块,用于获取待搜索号码,将所述待搜索号码进行倒序处理,得到倒序号码,基于所述待搜索号码和倒序号码,对所述号码库中各所述待搜索词集包含的索引词进行匹配,得到匹配结果。
8.一种电子设备,其特征在于,包括一个或多个存储介质和一个或多个与存储介质通信的处理器,一个或多个存储介质存储有处理器可执行的机器可执行指令,当电子设备运行时,处理器执行所述机器可执行指令,以执行权利要求1-6中任意一项所述的方法步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有机器可执行指令,所述机器可执行指令被执行时实现权利要求1-6中任意一项所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110943576.1A CN113641731B (zh) | 2021-08-17 | 2021-08-17 | 模糊搜索优化方法、装置、电子设备和可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110943576.1A CN113641731B (zh) | 2021-08-17 | 2021-08-17 | 模糊搜索优化方法、装置、电子设备和可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113641731A CN113641731A (zh) | 2021-11-12 |
CN113641731B true CN113641731B (zh) | 2023-05-02 |
Family
ID=78422521
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110943576.1A Active CN113641731B (zh) | 2021-08-17 | 2021-08-17 | 模糊搜索优化方法、装置、电子设备和可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113641731B (zh) |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5123112A (en) * | 1990-08-02 | 1992-06-16 | Gte Airfone Incorporated | Air-to-ground communication system |
CN1543172A (zh) * | 2003-04-30 | 2004-11-03 | 摩托罗拉公司 | 改进的主叫用户识别方法和装置 |
WO2005096603A1 (en) * | 2004-03-30 | 2005-10-13 | Francis Cagney | Automatic telephone book look-up |
AU2009335623A1 (en) * | 2009-01-08 | 2011-07-28 | Servicenow, Inc. | Chatbots |
CN103294776A (zh) * | 2013-05-13 | 2013-09-11 | 浙江大学 | 一种智能手机通讯录模糊搜索的方法 |
CN103929520A (zh) * | 2014-04-17 | 2014-07-16 | 惠州Tcl移动通信有限公司 | 一种手机电话号码匹配的方法及系统 |
CN105243086A (zh) * | 2015-09-08 | 2016-01-13 | 北京北大千方科技有限公司 | 一种车辆信息查询方法和装置 |
CN105955986A (zh) * | 2016-04-18 | 2016-09-21 | 乐视控股(北京)有限公司 | 一种字符的转换方法及装置 |
CN106202011A (zh) * | 2016-07-13 | 2016-12-07 | 成都知道创宇信息技术有限公司 | 一种提取手机号码的方法 |
CN106611053A (zh) * | 2016-12-26 | 2017-05-03 | 河南信安通信技术股份有限公司 | 一种数据清理、索引方法 |
CN108664509A (zh) * | 2017-03-31 | 2018-10-16 | 华为技术有限公司 | 一种即席查询的方法、装置及服务器 |
CN110427404A (zh) * | 2019-08-01 | 2019-11-08 | 上海计算机软件技术开发中心 | 一种区块链跨链数据检索系统 |
CN112380853A (zh) * | 2020-11-16 | 2021-02-19 | 中国平安人寿保险股份有限公司 | 业务场景交互方法、装置、终端设备及存储介质 |
-
2021
- 2021-08-17 CN CN202110943576.1A patent/CN113641731B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5123112A (en) * | 1990-08-02 | 1992-06-16 | Gte Airfone Incorporated | Air-to-ground communication system |
CN1543172A (zh) * | 2003-04-30 | 2004-11-03 | 摩托罗拉公司 | 改进的主叫用户识别方法和装置 |
WO2005096603A1 (en) * | 2004-03-30 | 2005-10-13 | Francis Cagney | Automatic telephone book look-up |
AU2009335623A1 (en) * | 2009-01-08 | 2011-07-28 | Servicenow, Inc. | Chatbots |
CN103294776A (zh) * | 2013-05-13 | 2013-09-11 | 浙江大学 | 一种智能手机通讯录模糊搜索的方法 |
CN103929520A (zh) * | 2014-04-17 | 2014-07-16 | 惠州Tcl移动通信有限公司 | 一种手机电话号码匹配的方法及系统 |
CN105243086A (zh) * | 2015-09-08 | 2016-01-13 | 北京北大千方科技有限公司 | 一种车辆信息查询方法和装置 |
CN105955986A (zh) * | 2016-04-18 | 2016-09-21 | 乐视控股(北京)有限公司 | 一种字符的转换方法及装置 |
CN106202011A (zh) * | 2016-07-13 | 2016-12-07 | 成都知道创宇信息技术有限公司 | 一种提取手机号码的方法 |
CN106611053A (zh) * | 2016-12-26 | 2017-05-03 | 河南信安通信技术股份有限公司 | 一种数据清理、索引方法 |
CN108664509A (zh) * | 2017-03-31 | 2018-10-16 | 华为技术有限公司 | 一种即席查询的方法、装置及服务器 |
CN110427404A (zh) * | 2019-08-01 | 2019-11-08 | 上海计算机软件技术开发中心 | 一种区块链跨链数据检索系统 |
CN112380853A (zh) * | 2020-11-16 | 2021-02-19 | 中国平安人寿保险股份有限公司 | 业务场景交互方法、装置、终端设备及存储介质 |
Non-Patent Citations (3)
Title |
---|
lushwong.怎样把电子表格里面的电话号码自动匹配归属地?.《https://zhidao.baidu.com/question/364446669.html》.2017,第1页. * |
Xiaolin Li等.Administrative Divisions of Addresses Matching Algorithm Based on Moving Window Algorithm for Maximal Matching.《Information Science and Applications (ICISA) 2016》.2016,第861-872页. * |
王立彬等.电话号码模糊匹配算法研究.《现代交际》.2013,第352卷(第2期),第61页. * |
Also Published As
Publication number | Publication date |
---|---|
CN113641731A (zh) | 2021-11-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10120851B2 (en) | Automatic semantic data enrichment in a spreadsheet | |
JP6554791B2 (ja) | 文字入力予測のための情報処理システムおよび情報処理方法 | |
CN107145538B (zh) | 表格数据查询方法、装置与系统 | |
US20040006458A1 (en) | Method and system of creating and using Chinese language data and user-corrected data | |
US20130124615A1 (en) | Retrieval terminal device, retrieval server device, retrieval tree compression method, and center-linked retrieval system | |
CN118502857A (zh) | 用户界面的交互处理方法、装置、设备、介质及程序产品 | |
CN113886683A (zh) | 标签簇构建方法、系统、存储介质及电子设备 | |
CN113641731B (zh) | 模糊搜索优化方法、装置、电子设备和可读存储介质 | |
CN117473984A (zh) | 一种txt文档内容章节划分方法和系统 | |
CN113064556A (zh) | 一种bios的数据存储方法、装置、设备及存储介质 | |
CN115577149B (zh) | 一种数据处理方法、装置、设备及可读存储介质 | |
CN109712613B (zh) | 语义分析库更新方法、装置及电子设备 | |
CN115577694B (zh) | 标准编写的智能推荐方法 | |
CN116127154A (zh) | 知识标签推荐方法、装置、电子设备及存储介质 | |
CN110728113A (zh) | 一种电子表格的信息筛选方法、装置及终端设备 | |
JP4872433B2 (ja) | 言語処理装置、携帯端末及び言語処理方法 | |
JP5184987B2 (ja) | 索引情報作成装置、索引情報作成方法及びプログラム | |
JP5209438B2 (ja) | 文書処理装置 | |
CN115495483B (zh) | 数据批量处理方法、装置、设备和计算机可读存储介质 | |
US9990420B2 (en) | Method of searching and generating a relevant search string | |
CN112000572B (zh) | 一种源码扫描工具、方法、设备及介质 | |
CN114547038B (zh) | 优先级数据库的数据处理方法及装置 | |
CN115310407B (zh) | 一种Excel模型的解析方法及系统 | |
CN110874444B (zh) | 一种url转换模型的建立方法、装置及电子设备 | |
CN114637408A (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 | ||
CP02 | Change in the address of a patent holder | ||
CP02 | Change in the address of a patent holder |
Address after: 9/F, Block C, No. 28 Tianfu Avenue North Section, Chengdu High tech Zone, China (Sichuan) Pilot Free Trade Zone, Chengdu City, Sichuan Province, 610000 Patentee after: CHENGDU KNOWNSEC INFORMATION TECHNOLOGY Co.,Ltd. Address before: 610000 floor 11, building 2, No. 219, Tianfu 3rd Street, Chengdu hi tech Zone, China (Sichuan) pilot Free Trade Zone, Chengdu hi tech Zone, Sichuan Province Patentee before: CHENGDU KNOWNSEC INFORMATION TECHNOLOGY Co.,Ltd. |