Calc regex bugfix and regex performance

Hi.
We've encountered a bug with the calc regex when there were several rules containing parenthesis on the same line (greedy regex and .* ...). I fixed it and added a test case.

I've also done some work to speed up the compression : compiling the regex that needed it and running the "delete empty rule" regex only when needed because it could be very slow.

Hope this helps you as well,
Benjamin