my ($after) = $str =~ /^.{$pos}(\d*)/; my ($before) = length $after ? reverse($str) =~ /(?=(\d*))(?=.{$pos}$)/ : ""; my $match = reverse($before) . $after;