my ($pat, $char) = $pattern =~ m/(.*)(.)$/; my $char_up = $char; my $char_down = $char; ++$char_up unless ($char =~ m/[9Z]/i); --$char_down unless ($char =~ m/[0A]/i); my $search = qr/$pat$char|$pat$char_up|$pat$char_down/; print $search;