sorry, it was my (stupid) fault. WS : ( ' ' | '\t' | '\r' | '\n' ) * {$setType(Token.SKIP);} ; should have been WS : ( ' ' | '\t' | '\r' | '\n' ) + {$setType(Token.SKIP);} ; note * -> + Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/