It'd help a lot if the grammar was actually readable. Combinations like .* don't visually "read" like a single unit, and then to make everything worse you often need a crazy amount of backslashes.
I'm not sure how you could fix that without introducing completely new characters or color-coding parts of the expression though.