Skip to content

xdek42/TinyRegex

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

纯正则表达式引擎

实现简单的纯正则表达式引擎: 支持的操作符:

 '|'      并联符号
 '*'      重复零次以上
 '?'      重复一次或零次
 '+'      重复一次以上
 {n,m}    重复n次至m次
 {n}      重复n次
 {n,}     重复n次以上
 '\'      转义符
 '.'      任何字符
 [abcd]   abcd任何一个字符
 [a-z]    字符a至z中任何一个
 [^a-c]   除字符abc之外的任何字符

正则表达式引擎工作流程:

  • 语法分析,将正则表达式转化为AST
  • 根据 AST 构建 NFA, 采用Thompson构造法
  • 将NFA,转化为 DFA, 采用子集构造法
  • 模拟匹配DFA

About

Basic regular expression engine

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors