中文引用格式: 楊嘉佳. YJJFA:一種數(shù)據(jù)驅(qū)動的高性能正則表達式匹配算法[J]. 電子技術應用,2026,52(4):102-107.
英文引用格式: Yang Jiajia. YJJFA: a data-driven high-performance regular expression matching algorithm[J]. Application of Electronic Technique,2026,52(4):102-107.
引言
作為大數(shù)據(jù)處理的重要技術手段之一,正則表達式(以下簡稱“正則”)因其強大的描述表達能力,在復雜數(shù)據(jù)的掃描處理中扮演重要角色。在人工智能時代背景下,正則表達式可以用于數(shù)據(jù)數(shù)據(jù)清洗、數(shù)據(jù)檢索等應用場景。此外,較為典型的應用還包括:基于正則表達式實現(xiàn)系統(tǒng)日志的特征提取、入侵檢測系統(tǒng)配置正則表達式實現(xiàn)網(wǎng)絡流量的深度檢測預警,以及利用正則表達式進行基因組序列數(shù)據(jù)的發(fā)現(xiàn)等。
當前,正則表達式的主流實現(xiàn)可分為非確定型有限自動機(Nondeterministic Finite Automata, NFA)[1]和確定型有限自動機(Deterministic Finite Automata, DFA)兩種方式[2]。假設模式長度為m,那么NFA的空間復雜度僅為線性級,但最壞情況下的時間復雜度可能為指數(shù)級。而DFA通過狀態(tài)轉移保證處理一個字符只消耗一次狀態(tài)轉移,卻有可能面臨著狀態(tài)空間爆炸問題。
實際上,在大數(shù)據(jù)和人工智能時代,一次狀態(tài)轉移只消耗一個字符的性能已遠無法滿足大規(guī)模數(shù)據(jù)處理的性能需求。因此,如何提高DFA的匹配性能成為了本文研究的重點。為提高DFA的匹配性能,本文提出一種基于可信區(qū)域的高性能正則表達式數(shù)據(jù)加速匹配算法:通過將DFA狀態(tài)轉移表劃分出最優(yōu)信任區(qū)域減少非信任列的數(shù)量,同時利用輸入字符與非信任列在指令層級的比對,最大限度獲得可略過的字符數(shù),減少內(nèi)存訪問的次數(shù)。
本文詳細內(nèi)容請下載:
http://www.ihrv.cn/resource/share/2000007046
作者信息:
楊嘉佳
(中國電子信息產(chǎn)業(yè)集團有限公司第六研究所,北京 100083)

