This is a very quick way way to check if a regexp will work the way one wants. It uses Term::Readline::Gnu so you get a command history (as in bash), simplifying repetative experiments. If anyone can find a string/regexp which
doesn't work properly please comment. I imagine it will best serve beginners like myself in understanding things like, eg. that "7463" contains "\w", or that anything could contain "X*".
a version of ReadLine regexp quicktest using substitution (s/) is regexp s/mode quicktest
#!/usr/bin/perl
use warnings;
use strict;
use Term::ReadLine;
# for correction and command history you must have
# Term::ReadLine::Gnu (from CPAN) installed
my $term = new Term::ReadLine 'regular expression test';
my $pr1 = "string: "; my $pr2 ="regexp: ";
my $OUT = $term->OUT || *STDOUT;
while (1) {
my $st=$term->readline($pr1);
my $rg=$term->readline($pr2);
if ($st =~ /$rg/) {print $OUT "$st contains $rg\n"}
else {print "$st does not contain $rg\n"}
}