If you're into Regular Expressions, check out the Reanimator. It provides a visual graphs of how the match was performed.
"The regular expression is compiled into a nondeterministic finite-state automaton (the first graph). Most regular expression engines reduce this to a deterministic finite-state automaton (the second graph). This is like a board game. The input string is interpreted as a series of instructions to advance a "game counter" (the state) along the game board (the automaton). If it lands on a winning space (a final state), there's a match!"
[via Addy Santo]