Introduction


Convert simple regular expressions to minimum deterministic finite automaton. (Regex => NFA => DFA => Min-DFA)


Raw regex on top supports only the ranges a-z, A-Z, and 0-9. You can escape single characters like \+ or \@ will be interpreted to literally match the + and @ symbol respectively. Note that \@ is redundant and can be simply passed as @ as well. Escaped whitespace characters like \n, \t, \r etc are special cased to match the single character (i.e. like '\n') etc. We also support \w for a-zA-Z0-9_, \d for 0-9, and \s for whitespace characters (\t\r\n\v\f).

Supported raw regex grammars

  • r = (s)
  • r = st
  • r = s|t
  • r = s*
  • r = s+
  • r = s?
  • r = [stu]
  • r = A-Z
  • r = a-z
  • r = 0-9
  • r = \_ (one char escapes only)
  • r = ϵ
    (Copy this character to input if needed)

Supported parsed regex grammars

  • r = (s)
  • r = st
  • r = s|t
  • r = s*
  • r = s+
  • r = s?
  • r = ϵ
    (Copy this character to input if needed)

Example parsed regexes

  • (a|b)*
  • (a*|b*)*
  • ((ϵ|a)b*)*
  • (a|b)*abb(a|b)*