use strict;
use warnings;
use Text::Levenshtein::Damerau::XS qw/xs_edistance/;

my @names = ( 'Angela Smarts',
		'Angela Sharron',
		'Andrew North',
		'Andy North',
		'Andy Norths',
		'Ameila Anderson',
	);

print "[NAMES]: " . join(', ',@names) . "\n\n";
print "Enter a name to fuzzy search against: ";
my $fuzzy_name = <>;
chomp($fuzzy_name);
print "\n";

my $best_match = "";
my $best_distance;

foreach my $name (@names) {
	my $distance = xs_edistance($fuzzy_name,$name);
	print "*$name - $distance\n";

	if( !defined $best_distance || $distance < $best_distance ) {
		$best_match = $name;
		$best_distance = $distance;
	}
}

print "\n\nDamerau-Levenshtein search result: " . $best_match . " with a distance of " . $best_distance . "\n";

1;