CN103309882A - 一种多模式下匹配字符串的方法及系统 - Google Patents

一种多模式下匹配字符串的方法及系统 Download PDF

Info

Publication number
CN103309882A
CN103309882A CN2012100649145A CN201210064914A CN103309882A CN 103309882 A CN103309882 A CN 103309882A CN 2012100649145 A CN2012100649145 A CN 2012100649145A CN 201210064914 A CN201210064914 A CN 201210064914A CN 103309882 A CN103309882 A CN 103309882A
Authority
CN
China
Prior art keywords
word
matched
length
sequence number
key word
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.)
Granted
Application number
CN2012100649145A
Other languages
English (en)
Other versions
CN103309882B (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.)
Beijing Venus Information Security Technology Co Ltd
Beijing Venus Information Technology Co Ltd
Original Assignee
Beijing Venus Information Security Technology Co Ltd
Beijing Venus Information Technology 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 Beijing Venus Information Security Technology Co Ltd, Beijing Venus Information Technology Co Ltd filed Critical Beijing Venus Information Security Technology Co Ltd
Priority to CN201210064914.5A priority Critical patent/CN103309882B/zh
Priority claimed from CN201210064914.5A external-priority patent/CN103309882B/zh
Publication of CN103309882A publication Critical patent/CN103309882A/zh
Application granted granted Critical
Publication of CN103309882B publication Critical patent/CN103309882B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种多模式下匹配字符串的方法及系统,涉及互联网技术领域。本发明公开的方法包括:存储模式集信息,所述模式集信息至少包括各关键字的长度和其首字母序号;当接收到字符串时,从所接收的字符串中提取出待匹配字,然后从所存储的模式集信息中查找长度和首字母序号与所述待匹配字的长度和首字母序号均相同的关键字,将所查找到的关键字与待匹配字比较,若比较结果一致,则此待匹配字匹配成功,否则匹配失败。本发明还公开了一种多模式下匹配字符串的系统。本申请技术方案通过构建hash表提供了一种快速匹配字符串的匹配方案,尤其针对小规模的模式集,通过对欲匹配字符串进行筛选,可以用极少的匹配次数完成字符串准确匹配。

Description

一种多模式下匹配字符串的方法及系统
技术领域
本发明涉及互联网技术领域,一种多模式下匹配字符串的方法及系统。
背景技术
字符串匹配算法在入侵检测,短消息过滤,信息查询等领域尤其是入侵检测方面均有重要的应用。随着网络技术的发展和Internet的普及,网络信息安全越来越受到人们的重视,现在社会是信息社会,保障信息的安全已成为刻不容缓的重要课题。
入侵检测技术就是为保证信息系统的安全而设计的一种能够及时发现并报告系统中未授权或者异常信息的技术,具有主动安全防范的特性,表现出良好的发展前景。而入侵检测系统检测引擎的核心即基于字符串匹配的特征匹配算法,这种检测方法可以在主机或网络数据中,通过准确的字符串模式匹配查找攻击签名,从而判断是否出现入侵。随着网络攻击技术的发展和攻击的多样化,如何改进字符串匹配算法,提高检测效率,已成为入侵检测系统研究的核心内容。
字符串匹配算法有很多,目前较常用的单模式字符串匹配算法是BM算法和KMP算法。应用广泛的入侵检测系统snort就采用了BM算法,但它是一种单模式的字符串匹配算法,在单一模式的字符串匹配算法中,BM算法一般被认为是性能最佳的。但在多模式字符串匹配过程中,BM算法需要对每一种模式分别进行匹配,因此BM算法的性能就大大降低了。目前的多模式匹配算法,比较高效的有CW算法,AC-BM算法,SBMP算法等。其中,CW算法的思路是首先用模式集构建一棵搜索树,然后在文本中用搜索树对模式进行跳跃搜索,在构建搜索树时,将模式从右边对齐,从右往左进行构建,树上相同的分支节点进行合并。在进行搜索时,以搜索树中模式的最短长度为匹配窗长度,文本从左往右匹配,在匹配窗内搜索树从右往左进行匹配。如果在匹配过程中一旦出现不匹配,则整个匹配树往右移动。匹配树往右移动的位移表可以预先通过线性算法构建。AC-BM算法非常类似于CW算法,采用了“坏字符”和“好后缀”两种启发式规则来进行跳跃。SBMP算法也非常类似于CW算法,但只采用了“坏字符”启发式规则来进行跳跃。
发明内容
本发明所要解决的技术问题是,提供一种多模式下匹配字符串的方法及系统,以解决提高字符串匹配效率的问题。
为了解决上述技术问题,本发明公开了一种多模式下匹配字符串的方法,包括:
存储模式集信息,所述模式集信息至少包括各关键字的长度和其首字母序号;
当接收到字符串时,从所接收的字符串中提取出待匹配字,然后从所存储的模式集信息中查找长度和首字母序号与所述待匹配字的长度和首字母序号均相同的关键字,将所查找到的关键字与待匹配字比较,若比较结果一致,则此待匹配字匹配成功,否则匹配失败。
较佳地,上述方法中,通过一个数组存储所述模式集信息,该用于存储模式集信息的数组至少包括关键字长度、关键字首字母序号以及关键字在模式集中可容忍冲突数,其中,关键字在模式集中可容忍冲突数为模式集中关键字长度以及关键字首字母序号均相同的关键字总数,所述数组的值为关键字在模式集中的位置序号。
较佳地,上述方法中,从所存储的模式集信息中查找关键字长度和关键字首字母序号与所述待匹配字的长度和首字母序号均相同的关键字为多个时,将所查找到的多个关键字依次与待匹配字进行比较。
较佳地,上述方法中,从所存储的模式集信息中查找长度和首字母序号与所述待匹配字的长度和首字母序号均相同的关键字,将所查找到的关键字与待匹配字比较的过程如下:
获取所述待匹配字的长度L及其首字母序号M,从用于存储模式集信息的数组中查找长度为L,首字母序号M、可容忍冲突数的值为0的
Figure BDA0000142870240000031
数组元素,比较将所查找到的数组元素对应的关键字与所述待匹配字是否一致,若比较结果一致,则匹配成功,若比较结果不一致,则更新数组元素的可容忍冲突数再从用于存储模式集信息的数组中查找长度为L,首字母序号M、可容忍冲突数为更新值的数组元素,比较所查找到的数组元素对应的关键字与所述待匹配字是否一致,其中,所述数组元素的可容忍冲突数的更新值为上一个所要查找的数组元素的可容忍冲突数的值加1。
较佳地,上述方法中,更新所要查找的数组元素时,若更新操作次数达到设定次数时,所提取出的关键字与所述待匹配字仍不一致时,结束本方法的操作。
本发明还公开了一种多模式下匹配字符串的系统,包括:
存储单元,存储模式集信息,所述模式集信息至少包括各关键字的长度和其首字母序号;
匹配单元,当接收到字符串时,从所述字符串中提取出待匹配字,从所述存储单元所存储的模式集信息中查找长度和首字母序号与所述待匹配字的长度和首字母序号均相同的关键字,将所查找到的关键字与待匹配字比较,若比较结果一致,则所述待匹配字匹配成功,否则匹配失败。
较佳地,上述系统中,所述存储单元,通过一个数组存储模式集信息,该用于存储模式集信息的数组至少包括关键字长度、关键字首字母序号以及关键字在模式集中可容忍冲突数,其中,关键字在模式集中可容忍冲突数为模式集中关键字长度以及关键字首字母序号均相同的关键字总数,所述数组的值等于关键字在模式集中的位置序号。
较佳地,上述系统中,所述匹配单元从所述存储单元所存储的模式集信息中查找关键字长度和关键字首字母序号与所述待匹配字的长度和首字母序号均相同的关键字为多个时,将所查找到的多个关键字依次与待匹配字进行比较。
较佳地,上述系统中,所述匹配单元包括处理模块和更新模块:
所述处理模块,获取所述待匹配字的长度L及其首字母序号M,从用于存储模式集信息的数组Array中查找长度为L,首字母序号M、可容忍冲突数的值为0的数据元素,比较所查找到数组元素对应的关键字与所述待匹配字是否一致,若比较结果一致,则匹配成功,若当比较结果不一致,向所述更新模块发送更新通知,并从用于存储模式集信息的数组中找出所述更新模块更新的数据元素,若比较所查找到的数据元素对应的关键字与所述待匹配字是否一致;
所述更新模块,按照所述处理模块发送的更新通知,更新所要查找的数组元素,其中,更新的所要查找的数组元素的长度保持为L、首字母序号保持为M,可容忍冲突数的值为上一个所要查找的数组元素的可容忍冲突数的值加1。
较佳地,上述系统中,所述更新模块,更新所要查找的数组元素时,若更新操作次数达到设定次数时,则不再进行更新操作。
本申请技术方案通过构建hash表提供了一种快速匹配字符串的匹配方案,尤其针对小规模的模式集,通过对欲匹配字符串进行筛选,可以用极少的匹配次数完成字符串准确匹配。
附图说明
图1为本实施例中提取待匹配字后进行匹配的流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文将结合附图对本发明技术方案作进一步详细说明。需要说明的是,在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。
实施例1
本案申请人考虑到可以按照模式集中关键字的长度和首字母对所要匹配的字符串先进行一次筛选,再对筛选后的字符串进行具体匹配,这样就避免了所要匹配的字符串与每一个模式都进行匹配,大大减少了匹配次数,缩短了匹配时间即提高了匹配效率。
基于上述思想,本实施例提供一种模式下匹配字符串的方法,包括:
事先存储模式集信息,该模式集信息至少包括各关键字的长度和其首字母序号;
具体地,可通过一个三维的数组来存储模式集信息,该用于存储模式集信息的数组至少包括关键字长度、关键字首字母序号以及关键字在模式集中可容忍冲突数,这三个信息可以分别体现为数组的三个下标,即下标的值分别表示关键字长度、关键字首字母序号以及关键字在模式集中可容忍冲突数。其中,关键字在模式集中可容忍冲突数为模式集中关键字长度以及关键字首字母序号均相同的关键字总数,而每个数组元素的值等于关键字在模式集中的位置序号。
本实施例中,假设模式集为{“NULL”,“image”,“img”,“input”,“style”},则用于存放模式集信息的三维数组中第一维指示模式长度,例如模式“image”的长度为5,第二维是关键字的首字母“i”的序号,第三维为可容忍的冲突数,如“image”与“input”的长度都是5,首字母也都是“i”,则第一个出现的关键字“image”冲突值设为0,再次出现的依次加1,“input”冲突值为1。而数组值等于存储序号即关键字在模式集中的位置,如“image”的序号为2。
当需要匹配字符串时,从所收到的字符串中提取出待匹配字,再从事先存储的模式集信息中查找长度和首字母序号与待匹配字的长度和首字母序号均相同的关键字,将所查找到的关键字与待匹配字比较,若比较结果一致,即待匹配字匹配成功,反之则匹配失败。其中,从需要匹配字符串中提取待匹配字时,可以空格或标点为分隔符为界提取待匹配字,所提取的待匹配字可能是某个文件的名字,也可能是某个Web页面的脚本,具体根据使用者的要求所定。
需要说明的是,从所存储的模式集信息中查找长度和首字母序号与所述待匹配字的长度和首字母序号均相同的关键字为多个时,要将所查找到的多个关键字依次与待匹配字进行比较。
具体操作是,获取所述待匹配字的长度L及其首字母序号M,从用于存储模式集信息的数组Array中查找长度为L,首字母序号M、可容忍冲突数的值为0的数据元素,即提取Array[L][M][0],若Array[L][M][0]为-1(本实施例中设置数据元素的初始值为-1,即表示该数组中不存在长度L、首字母序号M的关键字),说明长度或首字母序号不匹配,结束此匹配过程,否则根据所查找到的数组元素的值从模式集中提取出对应的关键字,比较所提取出的关键字与所述待匹配字是否一致,当比较结果不一致时,则更新所要查找的数组元素的下标,查找更新后的数组元素,若更新的数据元素的值不为-1,则根据所查找到的数组元素的值从模式集中提取出对应的关键字,比较所提取出的关键字与所述待匹配字是否一致,其中,更新后的数组元素的下标中长度保持为L、首字母序号保持为M,可容忍冲突数的值为上一个所要查找的数组元素下标中可容忍冲突数的值加1。
为了避免重复进行的更新操作对匹配效率有所影响,故优选方案中提出,更新数组下标时,若更新操作次数达到设定次数(本实施例设定次数为3)时,所提取出的关键字与所述待匹配字仍不一致时,就结束整个流程。
下面以模式集{“NULL”,“image”,“img”,“input”,“style”}、待匹配字符串“fragment”,“ice”,“inner”为例,说明按照上述方法匹配字符串的具体过程,如图1所示,该过程包括如下步骤:
步骤100、构建数组;
该步骤中先初始化关键字的匹配数据缓冲区,对要筛选的关键字的数据按照如下条件进行预处理:
第一维,字符串长度:<=20*
第二维,字母序号:0-25*
第三维,可容忍冲突数:0-2*
将预处理后的数据存入一数组中,针对模式集{“NULL”,“image”,“img”,“input”,“style”}所构建的数组初始化如下:
hash[4][13][0]=1,
hash[5][8][0]=2,
hash[3][8][0]=3,
hash[5][8][1]=4,
hash[5][18][0]=5;
其他的数组元素值全部预设为-1。
步骤200、接收待匹配字符串,从中提取待匹配字;
从所接收到的字符串中提取出的待匹配字可能是某个文件的名字,也可能是某个Web页面的脚本,具体根据使用者的要求所定。
步骤300,从数组中查找待匹配字对应的数组元素,再将待匹配字与所查找到的数组元素对应的关键字进行比较,若比较结果一致,则匹配,否则匹配失败。
该步骤中,按照待匹配字长度和首字母序号进行预处理,从预处理的数组中获得对应的相同长度,相同首字母的关键字序号,如果取得的关键字序号不为-1,则继续比较字符串和提取出的关键字,最多比较设定次数(例如3次),就可以判断本字符串是否是特殊字符串。
以欲匹配字符串“fragment”,“ice”,“inner”为例。
“fragment”长度为8,首字母“f”对应于5,获取hash[8][5][0],在数组中hash[8][5][0]=-1,不符合模式集中的任一模式的长度和首字母,所以“fragment”匹配不成功。
“ice”长度为3,首字母“i”对应于8,获取hash[3][8][0]的值为3,从模式集中取得序号为3的模式为“img”,比较两个字符串“img”与“ice”,不相等,再获取hash[3][8][1]的值,为-1说明没有其他符合这个长度和首字母的模式,所以“ice”匹配不成功。
“inner”长度为5,首字母对应于8,获取hash[5][8][0]的值为2,从模式集中取得序号为2的模式为“image”,比较“image”与“inner”,不相等,再获取hash[5][8][1]的值为4,从模式集中取序号为4的模式为“input”,比较“input”与“inner”,不相等,再次获取hash[5][8][2]的值,发现为-1,所以“inner”匹配不成功。
从上述例子来看,由于每个字符串最多比较3次,就可以判断本字符串是否能与模式集中的某一模式匹配,对小规模的模式集来说,这是非常高效的。
实施例2
本实施例提供一种多模式下匹配字符串的系统,可实现上述实施例1的匹配方法,该系统包括存储单元和匹配单元。
存储单元,存储模式集信息,模式集信息至少包括各关键字的长度和其首字母序号;
其中,存储单元,可以通过一个数组存储模式集信息,该用于存储模式集信息的数组至少包括关键字长度、关键字首字母序号以及关键字在模式集中可容忍冲突数。其中,hash数组的值等于关键字在模式集中的位置序号。关键字在模式集中可容忍冲突数为模式集中关键字长度以及关键字首字母序号均相同的关键字总数。
匹配单元,当接收到字符串时,从中提取出待匹配字,从存储单元所存储的模式集信息中查找长度和首字母序号与所述待匹配字的长度和首字母序号均相同的关键字,将所查找到的关键字与待匹配字比较,若比较结果一致,则所接收到的字符串匹配成功,否则匹配失败。
需要说明的是匹配单元从存储单元所存储的模式集信息中查找长度和首字母序号与待匹配字的长度和首字母序号均相同的关键字可能是一个也可能是多个,当是多个时,将所查找到的多个关键字依次与待匹配字进行比较。
考虑到从所存储的模式集信息中查找长度和首字母序号与待匹配字的长度和首字母序号均相同的关键字可能是多个,故另有一些方案中提出,匹配单元可以分为处理模块和更新模块。
处理模块,获取所述待匹配字的长度L及其首字母序号M,从用于存储模式集信息的数组Array中查找长度为L,首字母序号M、可容忍冲突数的值为0的数据元素,即提取Array[L][M][0],若Array[L][M][0]为-1说明长度或首字母序号不匹配,结束此匹配过程,否则根据所查找到的元素值从模式集中提取出对应的关键字,比较所提取出的关键字与所述待匹配字是否一致,当比较结果不一致时,向所述更新模块发送更新通知,并从用于存储模式集信息的数组中找出所述更新模块更新的数据元素,若该数组元素的值不为-1,则根据所查找到的数据元素的值从模式集中提取出对应的关键字,比较所提取出的关键字与所述待匹配字是否一致;
更新模块,按照所述更新模块发送的更新通知,更新所要查找的数组元素的可容忍冲突数据的值,更新后的数组元素中长度保持为L、首字母序号保持为M,可容忍冲突数的值为上一个所要查找的数组元素中可容忍冲突数的值加1。
本实施例中,可以通过三个下标来指示各数组元素的关键字长度、关键字首字母序号,可容忍冲突数的值。这样,更新模块,更新所要查找的数据元素时,保持两个下标值不变,仅更新一个下标的值即可。也就是保持关键字长度和关键字首字母序号不变,更新可容忍冲突数的值。
由于更新操作过多可能会影响到匹配效率以及资源利用率,故优选方案中,更新模块更新所要查找的数组元素时,若更新操作次数达到设定次数时,则不再进行更新操作。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本申请不限制于任何特定形式的硬件和软件的结合。
从上述实施例可以看出,本申请技术方案在数组中添加了模式长度和模式首字母这一变量,与一般的匹配方案不同,在匹配字符串时先对这个字符串做一次筛选,按照字符串的长度和字符串的首字母,获得对应的数组元素值,也就是模式集中相同长度相同首字母的模式的序号,也就是按照长度和首字母先进行一次筛选,只有通过筛选的才继续进行匹配,这样就避免了字符串与每一个模式都进行匹配,大大减少了匹配次数,缩短了匹配时间。尤其针对小规模的模式集,采用该方案进行匹配效果极佳。
以上所述,仅为本发明的较佳实例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种多模式下匹配字符串的方法,其特征在于,该方法包括:
存储模式集信息,所述模式集信息至少包括各关键字的长度和其首字母序号;
当接收到字符串时,从所接收的字符串中提取出待匹配字,然后从所存储的模式集信息中查找长度和首字母序号与所述待匹配字的长度和首字母序号均相同的关键字,将所查找到的关键字与待匹配字比较,若比较结果一致,则此待匹配字匹配成功,否则匹配失败。
2.如权利要求1所述的方法,其特征在于,
通过一个数组存储所述模式集信息,该用于存储模式集信息的数组至少包括关键字长度、关键字首字母序号以及关键字在模式集中可容忍冲突数,其中,关键字在模式集中可容忍冲突数为模式集中关键字长度以及关键字首字母序号均相同的关键字总数,所述数组的值为关键字在模式集中的位置序号。
3.如权利要求2所述的方法,其特征在于,从所存储的模式集信息中查找关键字长度和关键字首字母序号与所述待匹配字的长度和首字母序号均相同的关键字为多个时,将所查找到的多个关键字依次与待匹配字进行比较。
4.如权利要求3所述的方法,其特征在于,从所存储的模式集信息中查找长度和首字母序号与所述待匹配字的长度和首字母序号均相同的关键字,将所查找到的关键字与待匹配字比较的过程如下:
获取所述待匹配字的长度L及其首字母序号M,从用于存储模式集信息的数组中查找长度为L,首字母序号M、可容忍冲突数的值为0的
Figure FDA0000142870230000011
数组元素,比较将所查找到的数组元素对应的关键字与所述待匹配字是否一致,若比较结果一致,则匹配成功,若比较结果不一致,则更新数组元素的可容忍冲突数再从用于存储模式集信息的数组中查找长度为L,首字母序号M、可容忍冲突数为更新值的数组元素,比较所查找到的数组元素对应的关键字与所述待匹配字是否一致,其中,所述数组元素的可容忍冲突数的更新值为上一个所要查找的数组元素的可容忍冲突数的值加1。
5.如权利要求4所述的方法,其特征在于,
更新所要查找的数组元素时,若更新操作次数达到设定次数时,所提取出的关键字与所述待匹配字仍不一致时,结束本方法的操作。
6.一种多模式下匹配字符串的系统,其特征在于,该系统包括:
存储单元,存储模式集信息,所述模式集信息至少包括各关键字的长度和其首字母序号;
匹配单元,当接收到字符串时,从所述字符串中提取出待匹配字,从所述存储单元所存储的模式集信息中查找长度和首字母序号与所述待匹配字的长度和首字母序号均相同的关键字,将所查找到的关键字与待匹配字比较,若比较结果一致,则所述待匹配字匹配成功,否则匹配失败。
7.如权利要求6所述的系统,其特征在于,
所述存储单元,通过一个数组存储模式集信息,该用于存储模式集信息的数组至少包括关键字长度、关键字首字母序号以及关键字在模式集中可容忍冲突数,其中,关键字在模式集中可容忍冲突数为模式集中关键字长度以及关键字首字母序号均相同的关键字总数,所述数组的值等于关键字在模式集中的位置序号。
8.如权利要求7所述的系统,其特征在于,所述匹配单元从所述存储单元所存储的模式集信息中查找关键字长度和关键字首字母序号与所述待匹配字的长度和首字母序号均相同的关键字为多个时,将所查找到的多个关键字依次与待匹配字进行比较。
9.如权利要求8所述的系统,其特征在于,所述匹配单元包括处理模块和更新模块:
所述处理模块,获取所述待匹配字的长度L及其首字母序号M,从用于存储模式集信息的数组Array中查找长度为L,首字母序号M、可容忍冲突数的值为0的数据元素,比较所查找到数组元素对应的关键字与所述待匹配字是否一致,若比较结果一致,则匹配成功,若当比较结果不一致,向所述更新模块发送更新通知,并从用于存储模式集信息的数组中找出所述更新模块更新的数据元素,若比较所查找到的数据元素对应的关键字与所述待匹配字是否一致;
所述更新模块,按照所述处理模块发送的更新通知,更新所要查找的数组元素,其中,更新的所要查找的数组元素的长度保持为L、首字母序号保持为M,可容忍冲突数的值为上一个所要查找的数组元素的可容忍冲突数的值加1。
10.如权利要求9所述的系统,其特征在于,
所述更新模块,更新所要查找的数组元素时,若更新操作次数达到设定次数时,则不再进行更新操作。
CN201210064914.5A 2012-03-13 一种多模式下匹配字符串的方法及系统 Expired - Fee Related CN103309882B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210064914.5A CN103309882B (zh) 2012-03-13 一种多模式下匹配字符串的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210064914.5A CN103309882B (zh) 2012-03-13 一种多模式下匹配字符串的方法及系统

Publications (2)

Publication Number Publication Date
CN103309882A true CN103309882A (zh) 2013-09-18
CN103309882B CN103309882B (zh) 2016-11-30

Family

ID=

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105574108A (zh) * 2015-12-14 2016-05-11 东南大学 一种继电保护自动测试系统中字符串比较的方法和系统
CN106528599A (zh) * 2016-09-23 2017-03-22 深圳凡豆信息科技有限公司 一种海量音频数据中的字符串快速模糊匹配算法
CN107465570A (zh) * 2017-07-12 2017-12-12 西安交大捷普网络科技有限公司 基于环形队列的数据包关键字检测方法
CN109933644A (zh) * 2019-03-22 2019-06-25 中国农业银行股份有限公司 一种字符串匹配方法及装置
CN112668667A (zh) * 2021-01-22 2021-04-16 上海华虹宏力半导体制造有限公司 版图文件的扫描方法
CN113989530A (zh) * 2021-10-27 2022-01-28 广州致新电力科技有限公司 一种快速特征比对的方法及系统
CN117574330A (zh) * 2023-12-29 2024-02-20 广东南方智媒科技有限公司 一种文本内容查重的版权保护方法、装置及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5228133A (en) * 1990-10-01 1993-07-13 Carl Oppedahl Method to perform text search in application programs in computer by selecting a character and scanning the text string to/from the selected character offset position
CN1190216A (zh) * 1998-03-11 1998-08-12 英业达股份有限公司 实现不规则片语快速查找的方法
WO2010021376A1 (ja) * 2008-08-22 2010-02-25 日本電気株式会社 検索装置、検索方法およびプログラム
CN101853280A (zh) * 2010-05-19 2010-10-06 北京友录在线科技发展有限公司 一种手持设备中联系人查找方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5228133A (en) * 1990-10-01 1993-07-13 Carl Oppedahl Method to perform text search in application programs in computer by selecting a character and scanning the text string to/from the selected character offset position
CN1190216A (zh) * 1998-03-11 1998-08-12 英业达股份有限公司 实现不规则片语快速查找的方法
WO2010021376A1 (ja) * 2008-08-22 2010-02-25 日本電気株式会社 検索装置、検索方法およびプログラム
CN101853280A (zh) * 2010-05-19 2010-10-06 北京友录在线科技发展有限公司 一种手持设备中联系人查找方法

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105574108A (zh) * 2015-12-14 2016-05-11 东南大学 一种继电保护自动测试系统中字符串比较的方法和系统
CN106528599A (zh) * 2016-09-23 2017-03-22 深圳凡豆信息科技有限公司 一种海量音频数据中的字符串快速模糊匹配算法
CN106528599B (zh) * 2016-09-23 2019-05-14 深圳凡豆信息科技有限公司 一种海量音频数据中的字符串快速模糊匹配算法
CN107465570A (zh) * 2017-07-12 2017-12-12 西安交大捷普网络科技有限公司 基于环形队列的数据包关键字检测方法
CN107465570B (zh) * 2017-07-12 2020-12-15 西安交大捷普网络科技有限公司 基于环形队列的数据包关键字检测方法
CN109933644A (zh) * 2019-03-22 2019-06-25 中国农业银行股份有限公司 一种字符串匹配方法及装置
CN109933644B (zh) * 2019-03-22 2021-03-09 中国农业银行股份有限公司 一种字符串匹配方法及装置
CN112668667A (zh) * 2021-01-22 2021-04-16 上海华虹宏力半导体制造有限公司 版图文件的扫描方法
CN112668667B (zh) * 2021-01-22 2024-05-14 上海华虹宏力半导体制造有限公司 版图文件的扫描方法
CN113989530A (zh) * 2021-10-27 2022-01-28 广州致新电力科技有限公司 一种快速特征比对的方法及系统
CN117574330A (zh) * 2023-12-29 2024-02-20 广东南方智媒科技有限公司 一种文本内容查重的版权保护方法、装置及存储介质
CN117574330B (zh) * 2023-12-29 2024-05-28 广东南方智媒科技有限公司 一种文本内容查重的版权保护方法、装置及存储介质

Similar Documents

Publication Publication Date Title
US7818303B2 (en) Web graph compression through scalable pattern mining
CN110162621B (zh) 分类模型训练方法、异常评论检测方法、装置及设备
US8510322B2 (en) Enriched search features based in part on discovering people-centric search intent
US20150234927A1 (en) Application search method, apparatus, and terminal
US9251289B2 (en) Matching target strings to known strings
KR101099908B1 (ko) 문서 간 유사도 계산 시스템 및 방법
US20070043736A1 (en) Smart find
EP3358474B1 (en) Route search method, device and apparatus, and non-volatile computer storage medium
KR101705778B1 (ko) 데이터 스트림 상에서 가중화 최대 빈발 패턴을 마이닝하기 위한 슬라이딩 윈도우 기반 빈발 패턴 관리 방법
CN112541074A (zh) 日志解析方法、装置、服务器和存储介质
CN104899264A (zh) 一种多模式正则表达式匹配方法及装置
CN111869176B (zh) 用于恶意软件签名生成的系统和方法
CN100495407C (zh) 一种多字符串匹配方法和芯片
CN105426412A (zh) 多模式的串匹配方法和装置
CN116562297B (zh) 基于HTrie树的中文敏感词变形体识别方法及系统
CN111831785A (zh) 敏感词检测方法、装置、计算机设备及存储介质
CN103324886A (zh) 一种网络攻击检测中指纹库的提取方法和系统
Kopelowitz et al. Dynamic weighted ancestors
CN103309882A (zh) 一种多模式下匹配字符串的方法及系统
CN108536713B (zh) 字符串审核方法、装置及电子设备
CN103902554B (zh) 数据访问方法与装置
JP6359227B2 (ja) プロセス探索装置およびプロセス探索プログラム
CN115062150A (zh) 一种文本分类方法、装置、电子设备及存储介质
KR100992440B1 (ko) 여러 개의 연속된 부분패턴을 이용한 다중 패턴매칭 방법
US20170270127A1 (en) Category-based full-text searching

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20161130

Termination date: 20210313

CF01 Termination of patent right due to non-payment of annual fee