Lecture 2: Regular Expressions and Finite State Machines

Background Material



Regular expressions describe patterns which can be recognized by finite state machines (FSM). It is possible to algorithmically construct a FSM that corresponds to a given regular expression. A FSM can be described by a transition table (program), which can be represented by a string. A FSM can be simulated to recognize the patterns it accepts.


  1. Deterministic Finite Automata (DFA) - language recognizer.
  2. Non-deterministic Finite Automata (NDFA)
  3. Regular expressions (language generator)
  4. The awk language

References and programs


Created: Jan. 8, 2006 by jjohnson AT cs DOT drexel DOT DOT edu