qr{^\s*[^#]*\s*sub}
####
#!/usr/bin/env perl
use v5.26;
my $re = qr{^\s*[^#]*\s*sub};
my (@match, @no_match);
while () {
if (/$re/) {
push @match, $_;
}
else {
push @no_match, $_;
}
}
say '*** Matched:';
print for @match;
say '*** Not Matched:';
print for @no_match;
__DATA__
should match these:
sub hello {
sub hello {
should not match these:
#sub hello {
# sub hello {
# sub hello {
# sub hello {
##
##
*** Matched:
sub hello {
sub hello {
*** Not Matched:
should match these:
should not match these:
#sub hello {
# sub hello {
# sub hello {
# sub hello {