#!/usr/bin/perl use warnings; print "Search for what: "; chomp(my $search = ); my %found; #used as a set later @words = split(/ /, $search); open(DATA, "books.txt") or die "error opening file $!"; while () { foreach $word(@words) { chomp($word); if (/$word/i) { print unless defined($found{lc($word)}); $found{lc($word)}=1; #indicates that word has been found } } } #### #!/usr/bin/perl use warnings; print "Search for what: "; chomp(my $search = ); @words = split(/ /, $search); open(DATA, "books.txt") or die "error opening file $!"; while () { foreach $word(@words) { chomp($word); if (/$word/i) { print; last; #skips checking this line against other words } } }