#! /usr/bin/perl -w use strict; open WORDS,"); close WORDS; my @guessed = qw(a b c r l); my @matches = f("__rl",\@words,\@guessed); print foreach (@matches); #-------------------------------------- sub f{ my ($guess,$wordref,$letterref) = @_; my @m = (); my $alphabet = join"|",('a'..'z'); my $guessed = join"|",@$letterref; $alphabet =~ s/$guessed//g; $guess =~ s!_![$alphabet]!g; foreach (@$wordref) { push @m,$_ if (/\b$guess\b/) } return @m; } #--------------------------------------