Joe,
I too am a starter. I am going to give you an advice that someone gave me on this forum.
Forget about all your parsing rules.
Write a grammar for lexer only. (lexer grammar MyGrammar;) which contains only the uppercase rules above
Inside your test runner, add a block that would print out all your tokens after scanning.
Example in C#:
var lexer = new MyPreProcessorLexer(new AntlrInputStream(input));
var tokenStream = new CommonTokenStream(lexer);
tokenStream.Fill();
foreach (var token in tokenStream.GetTokens())
{
Console.WriteLine(token);
}
Then examine your token types/values with your input letter by letter and word by word. See if they come out in the order expected and the type you wanted them.
Until you are 100% satisfied do not move to the parsing stage.
Jeff