We will use the rules which defined a regular expression as a basis for the construction:

- The NFA representing the empty string is:

- If the regular expression is just a character, eg.
`a`, then the corresponding NFA is :

- The union operator is represented by a choice of transitions from a node;
thus
`a|b`can be represented as:

- Concatenation simply involves connecting one NFA to the other;
eg.
`ab`is:

- The Kleene closure must allow for taking zero or more instances of the
letter from the input; thus
`a*`looks like:

James Power 2002-11-29