a nice Perl regex debugger

A nice Perl Regex debugger -- Regexp::Debugger

Install
# cpan Regexp::Debugger


cpan or cpanm should put rxrx in your path eg:
/usr/local/bin/rxrx
invoke with
$ rxrx
or
$ perl -MRegexp::Debugger -E 'Regexp::Debugger::rxrx(@ARGV)'


a usage example:
$ rxrx
enter a pattern in the "pattern register" eg:
/\s.*(fo{1,2}\s*bar)[\.\,\:\s]*/i
enter a string to match against
'The Foo bar.'
enter m to Match current string against current pattern --start the stepping process
m
Now hit n for single steps xor m for partial match steps --all the steps required up to the next partial match at once. These are not the only stepping options. Anyways, it is a nice debugger with colors, explanations, forward, backward and jump stepping.

A few pictures with the above example.





How coool is that!
( it does not show the /i modifier but it 'obviously' knows about it )

It is easier to have the debugger reading your Regular Expressions from a file or a perl program. The debugger will find them.
eg:
$ echo '"The Foo Bar." =~ /\s.*(fo{1,2}\s*bar)[\.\,\:\s\;\?]*/i;' > rxtest.pl
$ echo '"say Foo Bar;" =~ /\s.*(fo{1,2}\s*bar)[\.\,\:\s\;\?]*/i;' >> rxtest.pl
$ rxrx rxtest.pl


sound|video play style controls description:s > , n > , m >> , c >FullMatch_END , - < , f >FAIL

but better
________________________________________________/ Help \______

  Motion:    s : step forwards
             - : step backwards
             m : continue to next partial match
             f : continue to next partial failure
             c : continue to end of full match
          : repeat last motion

  Display:   v : change to visualization
             e : change to event log
             h : change to heatmaps
             j : change to JSON representation
             d : describe the regex in detail

  Snapshot:  V : take snapshot of current visualization
             E : take snapshot of current event log
             H : take snapshot of current heatmaps
             J : take snapshot of current JSON representation
             D : take snapshot of regex description

  Control:   q : quit debugger and continue program
             x : exit debugger and terminate program

______________________________________________________________



https://metacpan.org/pod/Regexp::Debugger
http://search.cpan.org/~dconway/Regexp-Debugger-0.001020/lib/Regexp/Debugger.pm



A nice Perl Regex Debugger