If you have ever spent hours trying to create a prefect Regex creating the Regex first then repeated testing, instead create the text, select the parts that need to be selected by the Regex and have the Regex generated then try this. I did not find a way to do advanced features such as named groups but this does most of the work.
There is a quick YouTube demo
For those that are not aware SWI-Prolog has the regex package for doing regular expressions.