in reply to Parser Performance Question

Nearly every if not every "*", "+" and "?" in your code should be followed by a "+" to prevent unnecessary backtracking. This might side-step the issue?