Right now nearly all the engines just throw a generic "Exception" if there is any issue with the regex or parsing. I think we should add two exception types. First a RegexFormatException (or similar) for if there is an issue with the regex/pattern itself (ie happens when you create a new Regex for .net). Second a ParseException if there is some exception that happens while we are parsing the text. I think both should also (optionally) take an inner exception where we can pass the actual exception if there was one (beyond just an error code).
I am happy to do this, but wanted to make sure it was desired before spending time on it.