CN102521357A - 一种利用自动机实现文本精确匹配的系统和方法 - Google Patents

一种利用自动机实现文本精确匹配的系统和方法 Download PDF

Info

Publication number
CN102521357A
CN102521357A CN2011104152226A CN201110415222A CN102521357A CN 102521357 A CN102521357 A CN 102521357A CN 2011104152226 A CN2011104152226 A CN 2011104152226A CN 201110415222 A CN201110415222 A CN 201110415222A CN 102521357 A CN102521357 A CN 102521357A
Authority
CN
China
Prior art keywords
matching
dfa
text
texts
coupling
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.)
Pending
Application number
CN2011104152226A
Other languages
English (en)
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.)
Dawning Information Industry Beijing Co Ltd
Original Assignee
Dawning Information Industry 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 Dawning Information Industry Beijing Co Ltd filed Critical Dawning Information Industry Beijing Co Ltd
Priority to CN2011104152226A priority Critical patent/CN102521357A/zh
Publication of CN102521357A publication Critical patent/CN102521357A/zh
Pending legal-status Critical Current

Links

Images

Abstract

本发明提供一种利用自动机实现文本精确匹配的系统和方法,其包括:Dfa匹配引擎,用于接收输入文本;dfa跳转表,用于对Dfa匹配引擎接收的输入文本进行匹配查询,如果匹配成功,则进入匹配处理模块,否则进入下一轮的文本输入匹配;匹配处理模块。本发明提供的利用自动机实现文本精确匹配的系统和方法,通过自动机对任何文本进行搜索、查询、匹配相应正则子串,同时利用自动机技术对所有正则子串生成自动机,只需遍历文本一遍,显著提高匹配的速度,同时也提高在文本匹配中的精度。同时,本发明方案还可以批量匹配一系列的文本文件。

Description

一种利用自动机实现文本精确匹配的系统和方法
技术领域
本发明属于网络安全领域,具体涉及一种利用自动机实现文本精确匹配的系统和方法。
背景技术
常规文本匹配方法是在文本中搜索固定感兴趣字串,但往往感兴趣的字串不是固定不变的串,而是一系列形状相近的正则特征串。另外,在常规文本匹配中,需要对感兴趣的字串逐一在文本中扫描一遍,效率低下。
专利号CN200710119845.2(一种快速内容分析的多关键词匹配方法)公开了一种快速内容分析的多关键词匹配方法。所述发明方法包括预处理阶段和模式匹配阶段。其中,所述的预处理阶段包括关键词特征串裁剪和关键词特征分片集合的构建、基于关键词特征分片集合的Bloom Filte(布隆过滤器)构造,以及原始关键词集合线性表构造,所述关键词匹配阶段包括:依据Bloom Filter实现当前窗口中文本串不与任何关键词特征分片匹配的快速判定;只在判定失败情况下通过字符串比较操作实现与候选关键词的精确匹配;将文本匹配窗口连续多字节快速跳跃。本发明充分利用了待匹配文本与关键词匹配成功概率异常低的特点,可实现大数量关键词场景下的高速匹配,非常适合病毒检测等在线病毒扫描应用。
专利号CN200610000801.3(一种用于文本或网络内容分析的多关键词匹配方法)公开了一种用于文本或网络内容分析的多关键词匹配方法,属于文本或网络内容处理技术领域。首先根据待匹配的关键词,建立以状态为节点的有限状态自动机,并记录关键词中的字符;根据字符对上述有限状态自动机进行转换,得到以字符为节点的有限状态自动机,节点总数为m+1,m为上述关键词中的字符数;将待匹配的文本或网络数据流作为以字符为节点的有限状态自动机的输入,与关键词进行匹配。本发明方法与已有的AC方法相比,没有引入任何附加计算。当关键词集合中所出现的字符数量少于最大可能字符数时,可以大大降低内存空间消耗。
目前对文本的匹配算法多采用关键字匹配算法,即KMP算法。但实际应用中感兴趣的不仅仅是固定不变的子串,还有一类形状相近的正则特征串。这种场合下,KMP算法就不适用了。
本发明通过自动机对任何文本进行搜索、查询、匹配相应正则子串,同时利用自动机技术对所有正则子串生成自动机,只需遍历文本一遍,显著提高匹配的速度,同时也提高在文本匹配中的精度。同时,本发明方案还可以批量匹配一系列的文本文件。
发明内容
本发明克服现有技术不足,匹配处理模块,按照不同用户的需求进行合适的替代。
本发明提供了一种利用自动机实现文本精确匹配的系统,其包括
1)Dfa匹配引擎,用于接收输入文本;
2)dfa跳转表,用于对Dfa匹配引擎接收的输入文本进行匹配查询,如果匹配成功,则进入匹配处理模块,否则进入下一轮的文本输入匹配;
3)匹配处理模块。
本发明提供的利用自动机实现文本精确匹配的系统,其DFA状态机是通过将感兴趣的固定串或正则特征串放置到配置文件中,然后对该配置文件编译生成的。
本发明提供的利用自动机实现文本精确匹配的系统,DFA状态机是多个不同的系列DFA状态机,其对应于被进行分组处理的配置文件。
本发明还提供了一种利用自动机实现文本精确匹配的方法,其包括
1)Dfa匹配步骤,接收输入文本并利用dfa跳转表对其进行匹配查询,如果匹配成功,则进入匹配处理模块,否则进入下一轮的文本输入匹配;
2)匹配处理步骤。
本发明提供的利用自动机实现文本精确匹配的方法,其DFA状态机是通过将感兴趣的固定串或正则特征串放置到配置文件中,然后对该配置文件编译生成的。
本发明提供的利用自动机实现文本精确匹配的方法,其DFA状态机是多个不同的系列DFA状态机,其对应于被进行分组处理的配置文件。
与现有技术相比,本发明的有益效果在于:通过采用该方案,可以实现灵活、有效、精确的查找匹配串。同时利用该方案,还可以实现对相似文档的批量匹配处理。
附图说明
图1是流程示意图。
具体实施方式
为了解决这些问题,本发明采用了状态机,将感兴趣的固定串或正则特征串放置到一配置文件中,然后对该配置文件编译生成DFA状态机。这样,只需遍历文本文件一遍,就能够获取所有匹配的精确信息。如果DFA状态机太大,可以将该配置文件进行分组处理,生成一系列不同的DFA状态机。具体实现方案如附图1所示。Dfa匹配引擎接受输入文本,同时连接到dfa跳转表中进行匹配查询。如果匹配不成功,则进入下一轮的文本输入匹配,如果成功匹配,则进入匹配处理模块,记录匹配的精确信息。然后再进入下一轮的文本匹配中。
本发明通过将感兴趣的固定串或正则特征串放置到一配置文件中,然后对该配置文件编译生成DFA状态机自动机,从而对任何文本进行搜索、查询、匹配相应正则子串,显著提高匹配的速度,同时也提高在文本匹配中的精度,此外还可以批量匹配一系列的文本文件。
以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所述领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者同等替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求范围当中。

Claims (6)

1.一种利用自动机实现文本精确匹配的系统,其包括
1)Dfa匹配引擎,用于接收输入文本;
2)dfa跳转表,用于对Dfa匹配引擎接收的输入文本进行匹配查询,如果匹配成功,则进入匹配处理模块,否则进入下一轮的文本输入匹配;
3)匹配处理模块。
2.权利要求1的系统,其特征在于,其DFA状态机是通过将感兴趣的固定串或正则特征串放置到配置文件中,然后对该配置文件编译生成的。
3.权利要求1的系统,其特征在于,DFA状态机是多个不同的系列DFA状态机,其对应于被进行分组处理的配置文件。
4.一种利用自动机实现文本精确匹配的方法,其包括
1)Dfa匹配步骤,接收输入文本并利用dfa跳转表对其进行匹配查询,如果匹配成功,则进入匹配处理模块,否则进入下一轮的文本输入匹配;
2)匹配处理步骤。
5.权利要求4的方法,其特征在于,其DFA状态机是通过将感兴趣的固定串或正则特征串放置到配置文件中,然后对该配置文件编译生成的。
6.权利要求4-5的方法,其特征在于,DFA状态机是多个不同的系列DFA状态机,其对应于被进行分组处理的配置文件。
CN2011104152226A 2011-12-13 2011-12-13 一种利用自动机实现文本精确匹配的系统和方法 Pending CN102521357A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2011104152226A CN102521357A (zh) 2011-12-13 2011-12-13 一种利用自动机实现文本精确匹配的系统和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2011104152226A CN102521357A (zh) 2011-12-13 2011-12-13 一种利用自动机实现文本精确匹配的系统和方法

Publications (1)

Publication Number Publication Date
CN102521357A true CN102521357A (zh) 2012-06-27

Family

ID=46292271

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011104152226A Pending CN102521357A (zh) 2011-12-13 2011-12-13 一种利用自动机实现文本精确匹配的系统和方法

Country Status (1)

Country Link
CN (1) CN102521357A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103577406A (zh) * 2012-07-19 2014-02-12 深圳中兴网信科技有限公司 一种管理非结构化数据的方法及装置
CN104866465A (zh) * 2014-02-25 2015-08-26 腾讯科技(深圳)有限公司 敏感文本检测方法及装置
CN104899264A (zh) * 2015-05-21 2015-09-09 东软集团股份有限公司 一种多模式正则表达式匹配方法及装置
CN112735469A (zh) * 2020-10-28 2021-04-30 西安电子科技大学 低内存语音关键词检测方法、系统、介质、设备及终端
CN112735469B (zh) * 2020-10-28 2024-05-17 西安电子科技大学 低内存语音关键词检测方法、系统、介质、设备及终端

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1492359A (zh) * 2002-04-10 2004-04-28 深圳市中兴通讯股份有限公司 一种多关键字自动状态机查找匹配方法
CN1801152A (zh) * 2006-01-13 2006-07-12 清华大学 一种用于文本或网络内容分析的多关键词匹配方法
CN101079890A (zh) * 2007-07-04 2007-11-28 杭州华三通信技术有限公司 一种生成特征码确定状态机的方法和装置
CN102142009A (zh) * 2010-12-09 2011-08-03 华为技术有限公司 一种正则表达式匹配的方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1492359A (zh) * 2002-04-10 2004-04-28 深圳市中兴通讯股份有限公司 一种多关键字自动状态机查找匹配方法
CN1801152A (zh) * 2006-01-13 2006-07-12 清华大学 一种用于文本或网络内容分析的多关键词匹配方法
CN101079890A (zh) * 2007-07-04 2007-11-28 杭州华三通信技术有限公司 一种生成特征码确定状态机的方法和装置
CN102142009A (zh) * 2010-12-09 2011-08-03 华为技术有限公司 一种正则表达式匹配的方法及装置

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103577406A (zh) * 2012-07-19 2014-02-12 深圳中兴网信科技有限公司 一种管理非结构化数据的方法及装置
CN103577406B (zh) * 2012-07-19 2019-04-16 深圳中兴网信科技有限公司 一种管理非结构化数据的方法及装置
CN104866465A (zh) * 2014-02-25 2015-08-26 腾讯科技(深圳)有限公司 敏感文本检测方法及装置
CN104866465B (zh) * 2014-02-25 2017-11-03 腾讯科技(深圳)有限公司 敏感文本检测方法及装置
CN104899264A (zh) * 2015-05-21 2015-09-09 东软集团股份有限公司 一种多模式正则表达式匹配方法及装置
CN112735469A (zh) * 2020-10-28 2021-04-30 西安电子科技大学 低内存语音关键词检测方法、系统、介质、设备及终端
CN112735469B (zh) * 2020-10-28 2024-05-17 西安电子科技大学 低内存语音关键词检测方法、系统、介质、设备及终端

Similar Documents

Publication Publication Date Title
CN101706807B (zh) 一种中文网页新词自动获取方法
CN101398820B (zh) 一种大规模关键词匹配方法
US8510322B2 (en) Enriched search features based in part on discovering people-centric search intent
CN104899264B (zh) 一种多模式正则表达式匹配方法及装置
CN101950312B (zh) 一种互联网网页内容解析方法
US20080195606A1 (en) Document matching engine using asymmetric signature generation
US20040015909A1 (en) System and method for regular expression matching using index
CN108829658A (zh) 新词发现的方法及装置
EP2499563A1 (en) Method and system for text filtering
CN103076892A (zh) 一种用于提供输入字符串所对应的输入候选项的方法与设备
EP2499562A1 (en) Enabling faster full-text searching using a structured data store
CN101154228A (zh) 一种分段模式匹配方法及其装置
CN103778185A (zh) 一种用于数据库审计系统的sql语句解析方法和系统
WO2008144457A2 (en) Efficient retrieval algorithm by query term discrimination
KR20080085165A (ko) 입력 데이터 확장 시스템 및 방법, 및 와일드카드 삽입 및입력 데이터 확장 시스템
AU2012250880A1 (en) Statistical spell checker
CN101425084A (zh) 基于有序二叉树的模式匹配方法
CN102870116A (zh) 内容匹配方法和装置
CN116562297B (zh) 基于HTrie树的中文敏感词变形体识别方法及系统
CN101685502A (zh) 模式匹配方法及装置
CN103324612A (zh) 一种分词的方法及装置
CN105045808A (zh) 一种复合规则集匹配方法和系统
US10565188B2 (en) System and method for performing a pattern matching search
CN102521357A (zh) 一种利用自动机实现文本精确匹配的系统和方法
Cheng et al. MISDA: web services discovery approach based on mining interface semantics

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20120627