C# Lexical Analyzer