use strict; use warnings; use YAPE::Regex::Explain; my( @REx ) = ( qr/((?<=prefix)(infix)(?=suffix))(??{ print $^N, "\n" })/, qr/prefix(infix)suffix(??{ print $^N, "\n" })/ ); my $string = "prefixinfixsuffix"; for( @REx ) { my $exp = YAPE::Regex::Explain->new($_)->explain; print $exp; 1 if $string =~ $_; }