Explanations for Regular Expressions
introduction to automata theory , languages and computation .