sub match_all_ways {
my ($string, $regex) = @_;
my $count;
my $incr = qr/(?{$count++})/;
$string =~ /(?:$regex)$incr(?!)/;
return $count;
}
print match_all_ways("abcdef", qr/..*..*./); # 20
print match_all_ways("abcdef", qr/..*..*./); # undef
####
sub match_all_ways {
use vars '$count';
my ($string, $regex) = @_;
local $count = 0;
my $incr = qr/(?{$count++})/;
$string =~ /(?:$regex)$incr(?!)/;
return $count;
}
####
{
my $count;
my $incr = qr/(?{$count++})/;
sub match_all_ways {
my ($string, $regex) = @_;
$count = 0;
$string =~ /(?:$regex)$incr(?!)/;
return $count;
}
}