#!/usr/bin/perl -w use strict; use Data::Dumper; my @data = ( 'Place De La Gare - Angers', 'Place De La Gare - Nevers', 'Place Mohammed V - Oujda', 'Place De La Gare - Rennes', 'Place de la Gare - Quimper', 'Place Thiers - Nancy', 'Place De La Gare - Grenoble', 'Place Du Chateau - Galerie Marchande Du Rer', 'Place De La Gare - Angers', 'Place De La Gare 1 - Bannes Grenoble', 'Place De La Gare - Nevers', 'Place De La Gare - Rennes', 'Place De La Gare bannes', 'Place de la Gare', 'Place de la Gare - Bergerac', 'Place de la Gare - Moutiers', 'Place de la Gare - Libourne' ); my @guesses = ('Place de la Gare', 'Rennes'); my @list = @data; foreach my $guess(@guesses) { my @guessed = grep { /$guess/i } @list; # Now guess in reduced list @list = @guessed; } print "Guess this is what you wanted ? ", join "\n", @list;