CN111159362B - 文本匹配处理方法及装置 - Google Patents

文本匹配处理方法及装置 Download PDF

Info

Publication number
CN111159362B
CN111159362B CN201911424830.6A CN201911424830A CN111159362B CN 111159362 B CN111159362 B CN 111159362B CN 201911424830 A CN201911424830 A CN 201911424830A CN 111159362 B CN111159362 B CN 111159362B
Authority
CN
China
Prior art keywords
string
mode
fixed
matching
text
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
Application number
CN201911424830.6A
Other languages
English (en)
Other versions
CN111159362A (zh
Inventor
王彬
覃永靖
程诗尧
马江波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qianxin Technology Group Co Ltd
Secworld Information Technology Beijing Co Ltd
Original Assignee
Qianxin Technology Group Co Ltd
Secworld Information Technology Beijing Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Qianxin Technology Group Co Ltd, Secworld Information Technology Beijing Co Ltd filed Critical Qianxin Technology Group Co Ltd
Priority to CN201911424830.6A priority Critical patent/CN111159362B/zh
Publication of CN111159362A publication Critical patent/CN111159362A/zh
Application granted granted Critical
Publication of CN111159362B publication Critical patent/CN111159362B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)

Abstract

本发明实施例提供一种文本匹配处理方法及装置,方法包括:获取待匹配文本;采用AC自动机对所述待匹配文本进行匹配处理获得匹配结果,根据匹配结果确定所述待匹配文件的风险类别;其中,所述AC自动机为采用模式串划分得到的定长模式子串集合构建的AC自动机,记录有定长模式子串在模式串中的索引值。本发明实施例提供的一种文本匹配处理方法及装置,通过采用模式串划分得到的定长模式子串集合构建的AC自动机对文本进行匹配处理获得匹配结果,然后根据匹配结果确定所述待匹配文件的风险类别,实现建立内存可控的AC自动机,提高模式匹配的可靠性,保证信息安全。

Description

文本匹配处理方法及装置
技术领域
本发明涉及文本搜索技术领域,尤其涉及一种文本匹配处理方法及装置。
背景技术
在文本搜索技术领域中,一般采用AC(Aho-Corasick automaton)自动机进行多模式精确串匹配,以判断网络中文本的安全风险。但该自动机的匹配性能不强依赖于模式串集合数量。故当“字符集”及“模式串集合数量”较大时,AC自动机内存空间非常大,发生内存溢出错误,影响文本匹配,进而影响对网络中文本的安全判断。
发明内容
针对现有技术存在的问题,本发明实施例提供一种文本匹配处理方法及装置。
本发明实施例提供一种文本匹配处理方法,包括:
获取待匹配文本;
采用AC自动机对所述待匹配文本进行匹配处理获得匹配结果,根据匹配结果确定所述待匹配文件的风险类别;
其中,所述AC自动机为采用模式串划分得到的定长模式子串集合构建的AC自动机,记录有定长模式子串在模式串中的索引值。
可选地,所述采用AC自动机对所述待匹配文本进行匹配处理获得匹配结果,包括:
采用AC自动机对所述待匹配文本进行扫描,获得所述待匹配文本中的定长模式子串,根据所述定长模式子串建立模式串匹配进度的映射关系表,以及根据所述定长模式子串和所述映射关系表获得匹配结果。
可选地,所述根据所述定长模式子串建立模式串匹配进度的映射关系表,以及根据所述定长模式子串和所述映射关系表获得匹配结果,包括:
更新步骤:获得当前的定长模式子串,确定当前的定长模式子串是模式串的首个定长模式子串,建立或更新模式串匹配进度的映射关系表,映射关系表包括模式串和定长模式子串的索引值;
获取步骤:确定当前的定长模式子串对应的模式串存在于所述映射关系表,则获得当前的定长模式子串的索引值;
判断步骤:确定当前定长模式子串的索引值和所述映射关系表中当前定长模式子串对应的模式串对应的索引值是否满足匹配条件,并更新模式串匹配进度的映射关系表;
匹配步骤:重复执行获取步骤和判断步骤,直到对所述待匹配文本扫描完成,确定所述映射关系表中模式串对应的索引值与时定长模式子串对应的最大索引值相同,则确定模式串匹配成功。
可选地,所述匹配条件包括:当前的定长模式子串的索引值与映射关系表中当前的定长模式子串对应的模式串对应的索引值之间的差值为1,其中当前的定长模式子串的索引值大于映射关系表中当前的定长模式子串对应的模式串对应的索引值。
第二方面,本发明实施例提供一种文本匹配处理装置,包括:
获取模块,用于获取待匹配文本;
处理模块,用于采用AC自动机对所述待匹配文本进行匹配处理获得匹配结果,根据匹配结果确定所述待匹配文件的风险类别;
其中,所述AC自动机为采用模式串划分得到的定长模式子串集合构建的AC自动机,记录有定长模式子串在模式串中的索引值。
可选地,所述处理模块具体用于:
采用AC自动机对所述待匹配文本进行扫描,获得所述待匹配文本中的定长模式子串,根据所述定长模式子串建立模式串匹配进度的映射关系表,以及根据所述定长模式子串和所述映射关系表获得匹配结果。
可选地,所述处理模块包括:
更新单元,用于获得当前的定长模式子串,确定当前的定长模式子串是模式串的首个定长模式子串,建立或更新模式串匹配进度的映射关系表,映射关系表包括模式串和定长模式子串的索引值;
获取单元,用于确定当前的定长模式子串对应的模式串存在于所述映射关系表,则获得当前的定长模式子串的索引值;
判断单元,用于确定当前定长模式子串的索引值和所述映射关系表中当前定长模式子串对应的模式串对应的索引值是否满足匹配条件,并更新模式串匹配进度的映射关系表;
匹配单元,用于对所述待匹配文本扫描完成后,确定所述映射关系表中模式串对应的索引值与定长模式子串对应的最大索引值相同,则确定模式串匹配成功。
可选地,所述匹配条件包括:当前的定长模式子串的索引值与映射关系表中当前的定长模式子串对应的模式串对应的索引值之间的差值为1,其中当前的定长模式子串的索引值大于映射关系表中当前的定长模式子串对应的模式串对应的索引值。
第三方面,本发明实施例一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述文本匹配处理方法的步骤。
第四方面,本发明实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述文本匹配处理方法的步骤。
本发明实施例提供的一种文本匹配处理方法及装置,通过采用模式串划分得到的定长模式子串集合构建的AC自动机对文本进行匹配处理获得匹配结果,然后根据匹配结果确定所述待匹配文件的风险类别,实现建立内存可控的AC自动机,提高模式匹配的可靠性,保证信息安全。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明文本匹配处理方法实施例流程图;
图2为本发明文本匹配处理方法实施例流程图;
图3为本发明文本匹配处理方法实施例流程图;
图4为本发明文本匹配处理方法具体流程图;
图5为本发明文本匹配处理装置实施例结构图;
图6为本发明文本匹配处理装置实施例结构图;
图7为本发明电子设备实施例结构图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在文本搜索技术领域中,一般采用AC(Aho-Corasick automaton)自动机进行多模式精确串匹配。但该自动机的匹配性能不强依赖于模式串集合数量。故当“字符集”及“模式串集合数量”较大时,AC自动机内存空间非常大,生成所有字符集的跳转函数容易发生内存溢出错误,影响文本匹配,进而影响对网络中文本的安全判断。
为此,图1示出了本发明一实施例提供的一种文本匹配处理方法,包括:
S11、获取待匹配文本;
S12、采用AC自动机对所述待匹配文本进行匹配处理获得匹配结果,根据匹配结果确定所述待匹配文件的风险类别;
其中,所述AC自动机为采用模式串划分得到的定长模式子串集合构建的AC自动机,记录有定长模式子串在模式串中的索引值。
针对步骤S11和步骤S12,需要说明的是,在本发明实施例中,文本是字符串的集合,对文件进行匹配搜索以判断是否能够匹配欲查询的字符串(即模式串)。进行文本匹配需要获取一段文本(即待匹配文本)。为了确定网络中出现的文本是否安全,即判断风险类型是安全还是非安全,故采用抓取方式从网络中获取待匹配文本。
在本发明实施例中,所述AC自动机为采用模式串划分得到的定长模式子串集合构建的AC自动机,记录有定长模式子串在模式串中的索引值。由此可知,本实施例所述的AC自动机与原有AC自动机不同。由于AC自动机为采用模式串划分得到的定长模式子串集合构建的AC自动机,因此,在对待匹配文本进行匹配过程中,需涉及到定长模式子串、定长模式子串索引值的判断及比较等过程。
在本发明实施例中的进一步实施例中,对原始模式串(即建立AC自动机时所需的模式串)进行划分,划分过程采用定长划分,定长划分是指按预设字符串长度对原始模式串进行划分。如原始模式串为“abcdef”,定长为3个字符长度,则原始模式串划分为两个定长模式子串“abc”和“def”。
对原始模式串进行划分后,会产生定长模式子串集合,根据定长模式子串集合采用现有的AC自动机构建方式可以构建本发明实施例提及的AC自动机。构建过程中,需要同步记录每个定长模式子串在对应的原始模式串中的索引。通常情况下,索引值采用“0、1、2、3、4……”。以上述的原始模式串“abcdef”为例,其两个定长模式子串“abc”和“def”对应的索引值为0和1。
本发明实施例提供的一种文本匹配处理方法,通过采用模式串划分得到的定长模式子串集合构建的AC自动机对文本进行匹配处理获得匹配结果,然后根据匹配结果确定所述待匹配文件的风险类别,实现建立内存可控的AC自动机,提高模式匹配的可靠性,保证信息安全。
图2示出了本发明一实施例提供的一种文本匹配处理方法,包括:
S21、获取待匹配文本;
S22、采用AC自动机对所述待匹配文本进行扫描,获得所述待匹配文本中的定长模式子串,根据所述定长模式子串建立模式串匹配进度的映射关系表,以及根据所述定长模式子串和所述映射关系表获得匹配结果,根据匹配结果确定所述待匹配文件的风险类别;
其中,所述AC自动机为采用模式串划分得到的定长模式子串集合构建的AC自动机,记录有定长模式子串在模式串中的索引值。
针对步骤S21-步骤22,需要说明的是,本发明实施例提及的AC自动机在上述实施例中有详细说明,在此不再赘述。
在本发明实施例中,采用AC自动机对待匹配文本进行扫描,扫描过程中需按字符顺序依次扫描匹配。在待匹配文本中会扫描出定长模式子串,由于定长模式子串会对应不同的模式串,因此,可以根据扫描出的定长模式子串建立模式串匹配进度的映射关系表。在该映射关系表中,既然是记录模式串匹配进度,因此,映射关系表包括模式串和当前匹配到模式串中哪一个定长模式子串的索引值。
例如:模式串为“abcdefhij”,其包括三个定长模式子串“abc”、“def”和“hij”,索引值分别为0、1、2。当该模式串在文本匹配中已匹配到“def”,则映射关系表中有关模式串“abcdefhij”的映射关系是:“abcdefhij”—“1”。
由于映射关系表的存在,当再次扫描到其他定长模式子串后,会根据定长模式子串在映射关系表中进行分析处理,从而得到整个文本匹配过程中是否成功完成对模式串的匹配。
本发明实施例提供的一种文本匹配处理方法,通过采用模式串划分得到的定长模式子串集合构建的AC自动机对文本进行匹配处理,建立模式串匹配进度的映射关系表,并根据扫描出的定长模式子串和映射关系表获得匹配结果,然后根据匹配结果确定所述待匹配文件的风险类别,实现建立内存可控的AC自动机,提高模式匹配的可靠性,保证信息安全。
图3示出了本发明一实施例提供的一种文本匹配处理方法,包括:
S31、获取待匹配文本;
S32、获得当前的定长模式子串,确定当前的定长模式子串是模式串的首个定长模式子串,建立或更新模式串匹配进度的映射关系表,映射关系表包括模式串和定长模式子串的索引值;
S33、确定当前的定长模式子串对应的模式串存在于所述映射关系表,则获得当前的定长模式子串的索引值;
S34、确定当前定长模式子串的索引值和所述映射关系表中当前定长模式子串对应的模式串对应的索引值是否满足匹配条件,并更新模式串匹配进度的映射关系表;
S35、使步骤S33和步骤S34重复执行,直到对所述待匹配文本扫描完成,确定所述映射关系表中模式串对应的索引值与定长模式子串对应的最大索引值相同,则确定模式串匹配成功,以确定所述待匹配文本存在风险;
其中,所述AC自动机为采用模式串划分得到的定长模式子串集合构建的AC自动机,记录有定长模式子串在模式串中的索引值。
针对步骤S31-步骤S35,需要说明的是,本发明实施例提及的AC自动机在上述实施例中有详细说明,在此不再赘述。
对待匹配文件进行字符扫描,当首次获得字符串为一个定长模式子串,确定该定长模式子串是否是某一个模式串的首个定长模式子串,当确定其属于某一个模式串的首个定长模式子串时,则建立模式串匹配进度的映射关系表,映射关系表包括模式串和定长模式子串的索引值,在这里此时的定长模式子串的索引值为该模式串的首个定长模式子串的索引值,即为0。
模式串匹配进度的映射关系表建立之后,当再次获得字符串为一个定长模式子串后,会判断该定长模式子串是否在目前的映射关系表中,当不在映射关系表中,则确定该定长模式子串是否是某一个模式串的首个定长模式子串。若是,则将在映射关系表中添加其对应的模式串及对应的索引值。
在本发明实施例中,判断定长模式子串是否是某一个模式串的首个定长模式子串,则以索引值是否为0为依准。
当该定长模式子串不是某一个模式串的首个定长模式子串,则放弃该定长模式子串,继续对文本中后续的字符进行扫描。
当确定当前的定长模式子串对应的模式串存在于所述映射关系表,则获得当前的定长模式子串的索引值。
确定当前的定长模式子串的索引值和所述映射关系表中当前的定长模式子串对应的模式串对应的索引值满足匹配条件,则更新模式串匹配进度的映射关系表。
在本发明实施例中,匹配条件包括:当前的定长模式子串的索引值与映射关系表中当前的定长模式子串对应的模式串对应的索引值之间的差值为1,其中当前的定长模式子串的索引值大于映射关系表中当前的定长模式子串对应的模式串对应的索引值。该匹配条件能够判断从待匹配文本中扫描到的两个定长模式子串为相邻的两个定长模式子串,从而对模式串匹配进度的映射关系表进行更新。
当满足匹配条件时,更新模式串匹配进度的映射关系表,在这里的更新过程是将模式串对应的索引值更新为当前的定长模式子串的索引值。
继续对文本进行字符扫描,并使步骤S33和步骤S34重复执行,直到对待匹配文本扫描完成,然后确定映射关系表中模式串对应的索引值与模式串划分定长模式子串时定长模式子串对应的最大索引值相同,则确定相应的模式串匹配成功,以确定待匹配文本存在风险。
下面以具体实例对上述过程进行解释说明:
例如模式串分别为“abcdef”、“abclku”、“acdkmn”。
以定长为3个字符,“abcdef”的定长模式子串分别为“abc”和“def”。“abclku”的定长模式子串分别为“abc”和“lku”,“acdkmn”的定长模式子串分别为“acd”和“kmn”。
待匹配文本为“qweabcdefacdopracdkmn”。
对待匹配文件进行字符依次扫描,当扫描到“abc”才会获得定长模式子串,故建立模式串匹配进度的映射关系表,如下:
(“abcdef”—“0”)
(“abclku”—“0”)
继续扫描,当扫描到“def”又获得定长模式子串。经判断,“def”所对应的模式串“abcdef”已出现在映射关系表中,此时获得“def”的索引值为“1”。
“def”的索引值“1”与映射关系表中模式串“abcdef”对应的索引值“0”之间的差值为1。故满足匹配条件,更新模式串匹配进度的映射关系表,如下:
(“abcdef”—“1”)
(“abclku”—“0”)
继续扫描,当扫描到“acd”又获得定长模式子串,经判断,“acd”所对应的模式串“acdkmn”未出现在映射关系表中,此时,判断“acd”的索引值是模式串“acdkmn”的首位定长模式子串的索引值,即为0。故更新模式串匹配进度的映射关系表,如下:
(“abcdef”—“1”)
(“abclku”—“0”)
(“acdkmn”—“0”)
继续扫描,当再次扫描到“acd”又获得定长模式子串,经判断,“acd”所对应的模式串“acdkmn”已出现在映射关系表中,此时获得“acd”的索引值为“0”。
“acd”的索引值“0”与映射关系表中模式串“acdkmn”对应的索引值“0”之间的差值为0。故不满足匹配条件,不更新模式串匹配进度的映射关系表,即映射关系表不变,如下:
(“abcdef”—“1”)
(“abclku”—“0”)
(“acdkmn”—“0”)
需要说明的是,当扫描过程中一些字符无法组成定长模式子串,则继续扫描后续的字符。直到获得定长模式子串,才会进行上述的处理过程。
图4为本发明实施例所述文本匹配处理方法的具体流程示意图,该图从模式串划分、AC自动机构建到文本匹配整个过程,由于图中过程在上述内容中有详细说明,在此不再结合附图4进行说明。
本发明实施例提供的一种文本匹配处理方法,通过采用模式串划分得到的定长模式子串集合构建的AC自动机对文本进行匹配处理,建立模式串匹配进度的映射关系表,并根据扫描出的定长模式子串和映射关系表获得匹配结果,然后根据匹配结果确定所述待匹配文件的风险类别,实现建立内存可控的AC自动机,提高模式匹配的可靠性,保证信息安全。
图5示出了本发明一实施例提供的一种文本匹配处理装置,包括获取模块51和处理模块52,其中:
获取模块51,用于获取待匹配文本;
处理模块52,用于采用AC自动机对所述待匹配文本进行匹配处理获得匹配结果,根据匹配结果确定所述待匹配文件的风险类别;
其中,所述AC自动机为采用模式串划分得到的定长模式子串集合构建的AC自动机,记录有定长模式子串在模式串中的索引值。
由于本发明实施例所述装置与上述实施例所述方法的原理相同,对于更加详细的解释内容在此不再赘述。
需要说明的是,本发明实施例中可以通过硬件处理器(hardware processor)来实现相关功能模块。
本发明实施例提供的一种文本匹配处理装置,通过采用模式串划分得到的定长模式子串集合构建的AC自动机对文本进行匹配处理获得匹配结果,然后根据匹配结果确定所述待匹配文件的风险类别,实现建立内存可控的AC自动机,提高模式匹配的可靠性,保证网络安全。
本发明一实施例提供的一种文本匹配处理装置,包括获取模块和处理模块,其中:
获取模块,用于获取待匹配文本;
处理模块,用于采用AC自动机对所述待匹配文本进行扫描,获得所述待匹配文本中的定长模式子串,根据所述定长模式子串建立模式串匹配进度的映射关系表,以及根据所述定长模式子串和所述映射关系表获得匹配结果,根据匹配结果确定所述待匹配文件的风险类别;
其中,所述AC自动机为采用模式串划分得到的定长模式子串集合构建的AC自动机,记录有定长模式子串在模式串中的索引值。
由于本发明实施例所述装置与上述实施例所述方法的原理相同,对于更加详细的解释内容在此不再赘述。
需要说明的是,本发明实施例中可以通过硬件处理器(hardware processor)来实现相关功能模块。
本发明实施例提供的一种文本匹配处理装置,通过采用模式串划分得到的定长模式子串集合构建的AC自动机对文本进行匹配处理,建立模式串匹配进度的映射关系表,并根据扫描出的定长模式子串和映射关系表获得匹配结果,然后根据匹配结果确定所述待匹配文件的风险类别,实现建立内存可控的AC自动机,提高模式匹配的可靠性,保证信息安全。
图6示出了本发明一实施例提供的一种文本匹配处理装置,包括获取模块61和处理模块,所述处理模块包括更新单元621、获取单元622、判断单元623和匹配单元624,其中:
获取模块61,用于获取待匹配文本;
更新单元621,用于获得当前的定长模式子串,确定当前的定长模式子串是模式串的首个定长模式子串,则建立或更新模式串匹配进度的映射关系表,映射关系表包括模式串和定长模式子串的索引值;
获取单元622,用于确定当前的定长模式子串对应的模式串存在于所述映射关系表,则获得当前的定长模式子串的索引值;
判断单元623,用于确定当前定长模式子串的索引值和所述映射关系表中当前的长模式子串对应的模式串对应的索引值是否满足匹配条件,并更新模式串匹配进度的映射关系表;
匹配单元624,用于对所述待匹配文本扫描完成后,确定所述映射关系表中模式串对应的索引值与定长模式子串对应的最大索引值相同,则确定模式串匹配成功,以确定所述待匹配文本存在风险;
其中,所述AC自动机为采用模式串划分得到的定长模式子串集合构建的AC自动机,记录有定长模式子串在模式串中的索引值。
由于本发明实施例所述装置与上述实施例所述方法的原理相同,对于更加详细的解释内容在此不再赘述。
需要说明的是,本发明实施例中可以通过硬件处理器(hardware processor)来实现相关功能模块。
本发明实施例提供的一种文本匹配处理装置,通过采用模式串划分得到的定长模式子串集合构建的AC自动机对文本进行匹配处理,建立模式串匹配进度的映射关系表,并根据扫描出的定长模式子串和映射关系表获得匹配结果,然后根据匹配结果确定所述待匹配文件的风险类别,实现建立内存可控的AC自动机,提高模式匹配的可靠性,保证信息安全。
图7示例了一种电子设备的实体结构示意图,如图7所示,该电子设备可以包括:处理器(processor)71、通信接口(Communications Interface)72、存储器(memory)73和通信总线74,其中,处理器71,通信接口72,存储器73通过通信总线74完成相互间的通信。处理器71可以调用存储器73中的逻辑指令,以执行如下方法:获取待匹配文本;采用AC自动机对所述待匹配文本进行匹配处理获得匹配结果,根据匹配结果确定所述待匹配文件的风险类别;其中,所述AC自动机为采用模式串划分得到的定长模式子串集合构建的AC自动机,记录有定长模式子串在模式串中的索引值。
此外,上述的存储器73中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的方法,例如包括:获取待匹配文本;采用AC自动机对所述待匹配文本进行匹配处理获得匹配结果,根据匹配结果确定所述待匹配文件的风险类别;其中,所述AC自动机为采用模式串划分得到的定长模式子串集合构建的AC自动机,记录有定长模式子串在模式串中的索引值。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (8)

1.一种文本匹配处理方法,其特征在于,包括:
获取待匹配文本;
采用AC自动机对所述待匹配文本进行匹配处理获得匹配结果,根据匹配结果确定所述待匹配文本的风险类别;
其中,所述AC自动机为采用模式串划分得到的定长模式子串集合构建的AC自动机,记录有定长模式子串在模式串中的索引值;
所述采用AC自动机对所述待匹配文本进行匹配处理获得匹配结果,包括:
采用AC自动机对所述待匹配文本进行扫描,获得所述待匹配文本中的定长模式子串,根据所述定长模式子串建立模式串匹配进度的映射关系表,以及根据所述定长模式子串和所述映射关系表获得匹配结果;
所述根据所述定长模式子串和所述映射关系表获得匹配结果,包括:
获取步骤:确定当前的定长模式子串对应的模式串存在于所述映射关系表,则获得当前的定长模式子串的索引值;
判断步骤:确定当前定长模式子串的索引值和所述映射关系表中当前定长模式子串对应的模式串对应的索引值是否满足匹配条件,并更新模式串匹配进度的映射关系表;
匹配步骤:重复执行获取步骤和判断步骤,直到对所述待匹配文本扫描完成,确定所述映射关系表中模式串对应的索引值与定长模式子串对应的最大索引值相同,则确定模式串匹配成功。
2.根据权利要求1所述的文本匹配处理方法,其特征在于,所述根据所述定长模式子串建立模式串匹配进度的映射关系表,包括:
更新步骤:获得当前的定长模式子串,确定当前的定长模式子串是模式串的首个定长模式子串,建立或更新模式串匹配进度的映射关系表,映射关系表包括模式串和定长模式子串的索引值。
3.根据权利要求2所述的文本匹配处理方法,其特征在于,所述匹配条件包括:当前的定长模式子串的索引值与映射关系表中当前的定长模式子串对应的模式串对应的索引值之间的差值为1,其中当前的定长模式子串的索引值大于映射关系表中当前的定长模式子串对应的模式串对应的索引值。
4.一种文本匹配处理装置,其特征在于,包括:
获取模块,用于获取待匹配文本;
处理模块,用于采用AC自动机对所述待匹配文本进行匹配处理获得匹配结果,根据匹配结果确定所述待匹配文本的风险类别;
其中,所述AC自动机为采用模式串划分得到的定长模式子串集合构建的AC自动机,记录有定长模式子串在模式串中的索引值;
所述处理模块具体用于:
采用AC自动机对所述待匹配文本进行扫描,获得所述待匹配文本中的定长模式子串,根据所述定长模式子串建立模式串匹配进度的映射关系表,以及根据所述定长模式子串和所述映射关系表获得匹配结果;
所述处理模块包括:
获取单元,用于确定当前的定长模式子串对应的模式串存在于所述映射关系表,则获得当前的定长模式子串的索引值;
判断单元,用于确定当前定长模式子串的索引值和所述映射关系表中当前定长模式子串对应的模式串对应的索引值是否满足匹配条件,并更新模式串匹配进度的映射关系表;
匹配单元,用于对所述待匹配文本扫描完成后,确定所述映射关系表中模式串对应的索引值与定长模式子串对应的最大索引值相同,则确定模式串匹配成功。
5.根据权利要求4所述的文本匹配处理装置,其特征在于,所述处理模块包括:
更新单元,用于获得当前的定长模式子串,确定当前的定长模式子串是模式串的首个定长模式子串,建立或更新模式串匹配进度的映射关系表,映射关系表包括模式串和定长模式子串的索引值。
6.根据权利要求5所述的文本匹配处理装置,其特征在于,所述匹配条件包括:当前的定长模式子串的索引值与映射关系表中当前的定长模式子串对应的模式串对应的索引值之间的差值为1,其中当前的定长模式子串的索引值大于映射关系表中当前的定长模式子串对应的模式串对应的索引值。
7.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至3任一项所述文本匹配处理方法的步骤。
8.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至3任一项权利要求所述文本匹配处理方法的步骤。
CN201911424830.6A 2019-12-31 2019-12-31 文本匹配处理方法及装置 Active CN111159362B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911424830.6A CN111159362B (zh) 2019-12-31 2019-12-31 文本匹配处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911424830.6A CN111159362B (zh) 2019-12-31 2019-12-31 文本匹配处理方法及装置

Publications (2)

Publication Number Publication Date
CN111159362A CN111159362A (zh) 2020-05-15
CN111159362B true CN111159362B (zh) 2024-04-26

Family

ID=70560749

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911424830.6A Active CN111159362B (zh) 2019-12-31 2019-12-31 文本匹配处理方法及装置

Country Status (1)

Country Link
CN (1) CN111159362B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111930933A (zh) * 2020-05-29 2020-11-13 深圳壹账通智能科技有限公司 一种基于人工智能的检务案件处理方法及装置
CN113065419B (zh) * 2021-03-18 2022-05-24 哈尔滨工业大学 一种基于流量高频内容的模式匹配算法及系统

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6785677B1 (en) * 2001-05-02 2004-08-31 Unisys Corporation Method for execution of query to search strings of characters that match pattern with a target string utilizing bit vector
US7599930B1 (en) * 2004-10-19 2009-10-06 Trovix, Inc. Concept synonym matching engine
CN102184205A (zh) * 2011-04-28 2011-09-14 哈尔滨工业大学 基于可扩展精度混沌哈希的多模式串匹配算法
CN105426412A (zh) * 2015-11-03 2016-03-23 北京锐安科技有限公司 多模式的串匹配方法和装置
CN106959962A (zh) * 2016-01-12 2017-07-18 中国移动通信集团青海有限公司 一种多模式字符串匹配方法和装置
CN107103253A (zh) * 2017-04-28 2017-08-29 哈尔滨理工大学 基于mpi的ac串匹配并行算法的磁盘敏感信息扫描系统
WO2018094764A1 (zh) * 2016-11-23 2018-05-31 深圳大学 一种基于云服务的模式串匹配验证方法及装置
WO2019227217A1 (en) * 2018-05-31 2019-12-05 Hardy-Francis Enterprises Inc. Systems and methods for indexing and searching data

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8170352B2 (en) * 2008-03-24 2012-05-01 Sophos Plc String searching facility
US8407245B2 (en) * 2010-11-24 2013-03-26 Microsoft Corporation Efficient string pattern matching for large pattern sets

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6785677B1 (en) * 2001-05-02 2004-08-31 Unisys Corporation Method for execution of query to search strings of characters that match pattern with a target string utilizing bit vector
US7599930B1 (en) * 2004-10-19 2009-10-06 Trovix, Inc. Concept synonym matching engine
CN102184205A (zh) * 2011-04-28 2011-09-14 哈尔滨工业大学 基于可扩展精度混沌哈希的多模式串匹配算法
CN105426412A (zh) * 2015-11-03 2016-03-23 北京锐安科技有限公司 多模式的串匹配方法和装置
CN106959962A (zh) * 2016-01-12 2017-07-18 中国移动通信集团青海有限公司 一种多模式字符串匹配方法和装置
WO2018094764A1 (zh) * 2016-11-23 2018-05-31 深圳大学 一种基于云服务的模式串匹配验证方法及装置
CN107103253A (zh) * 2017-04-28 2017-08-29 哈尔滨理工大学 基于mpi的ac串匹配并行算法的磁盘敏感信息扫描系统
WO2019227217A1 (en) * 2018-05-31 2019-12-05 Hardy-Francis Enterprises Inc. Systems and methods for indexing and searching data

Non-Patent Citations (8)

* Cited by examiner, † Cited by third party
Title
Word文本解析和关键字快速匹配方法;廖怨婷;兰小龙;陈庆春;;通信技术(03);全文 *
一种新的应用于数据流关联分析的多模式匹配算法;王瑞莹;邱亮;;东北电力大学学报(04);全文 *
一种面向大规模短特征集的字符串匹配技术;李志文;张伟;;计算机工程与应用(01);全文 *
串匹配算法的简单并行实现;马明;;电脑知识与技术(34);全文 *
基于Aho-Corasick算法的多模式匹配算法研究;王培凤;李莉;;计算机应用研究(04);全文 *
基于确定有限状态自动机的改进多模式匹配算法研究;陆琳琳;田野;;计算机应用与软件(07);全文 *
大数据分析和大数据处理技术研究综述;沈荣;张保文;;电脑知识与技术(11);全文 *
改进的带可变长度通配符的近似模式串匹配算法;汪浩;王驰;;南京理工大学学报(06);全文 *

Also Published As

Publication number Publication date
CN111159362A (zh) 2020-05-15

Similar Documents

Publication Publication Date Title
KR102230661B1 (ko) Sql 검토 방법, 장치, 서버 및 저장 매체
CN111177491B (zh) 正则表达式的匹配方法、装置、电子设备及存储介质
CN111159362B (zh) 文本匹配处理方法及装置
EP2585962B1 (en) Password checking
CN106708799B (zh) 一种文本纠错方法、装置及终端
US11165790B2 (en) Malicious communication log detection device, malicious communication log detection method, and malicious communication log detection program
CN111428474A (zh) 基于语言模型的纠错方法、装置、设备及存储介质
CN111079768A (zh) 一种基于ocr的文字图像识别方法及装置
CN107145481A (zh) 电子设备、存储介质、网页表单填充方法及装置
CN112925900B (zh) 搜索信息处理方法、装置、设备及存储介质
CN111144391B (zh) 一种ocr识别结果纠错方法及装置
CN112685612A (zh) 一种特征码查找和匹配方法、设备及存储介质
CN110147558B (zh) 一种翻译语料处理的方法和装置
CN110333990B (zh) 数据处理方法以及装置
CN111191469A (zh) 大规模语料清洗对齐方法及装置
CN111680291A (zh) 一种对抗样本生成方法、装置、电子设备及存储介质
CN113918712A (zh) 数据处理方法以及装置
WO2024051196A1 (zh) 恶意代码检测方法、装置、电子设备及存储介质
CN113065419B (zh) 一种基于流量高频内容的模式匹配算法及系统
CN111090737A (zh) 词库更新方法、装置、电子设备及可读存储介质
CN111027325B (zh) 一种模型生成方法、实体识别方法、装置及电子设备
CN114238709A (zh) 字符串匹配方法、装置、设备和可读存储介质
CN110555431B (zh) 一种图像识别的方法和装置
CN109492224B (zh) 一种词表构建的方法及装置
CN108133154B (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
CB02 Change of applicant information
CB02 Change of applicant information

Country or region after: China

Address after: Room 332, 3 / F, Building 102, 28 xinjiekouwei street, Xicheng District, Beijing 100088

Applicant after: Qianxin Technology Group Co.,Ltd.

Applicant after: Qianxin Wangshen information technology (Beijing) Co.,Ltd.

Address before: Room 332, 3 / F, Building 102, 28 xinjiekouwei street, Xicheng District, Beijing 100088

Applicant before: Qianxin Technology Group Co.,Ltd.

Country or region before: China

Applicant before: LEGENDSEC INFORMATION TECHNOLOGY (BEIJING) Inc.

GR01 Patent grant
GR01 Patent grant