Sha256: e7af440a9e97347ea3a29ea16ee9907ceb5ae81c90719adb984cd019ce82311a

Contents?: true

Size: 419 Bytes

Versions: 73

Compression:

Stored size: 419 Bytes

Contents

package Anagram;
use strict;
use warnings;

sub match {
    my ($word, @words) = @_;

    my @results;
	my $canonical = _canonize($word);
	foreach my $w (@words) {
        next if $w eq $word;
        my $try = _canonize($w);
        if ($try eq $canonical) {
            push @results, $w;
        }
    }
    return \@results;
}


sub _canonize {
    my ($str) = @_;
    return join '', sort split //, lc $str
}


1;

Version data entries

73 entries across 73 versions & 1 rubygems

Version Path
trackler-2.2.1.119 tracks/perl5/exercises/anagram/.meta/solutions/Anagram.pm
trackler-2.2.1.118 tracks/perl5/exercises/anagram/.meta/solutions/Anagram.pm
trackler-2.2.1.117 tracks/perl5/exercises/anagram/.meta/solutions/Anagram.pm
trackler-2.2.1.116 tracks/perl5/exercises/anagram/.meta/solutions/Anagram.pm
trackler-2.2.1.115 tracks/perl5/exercises/anagram/.meta/solutions/Anagram.pm
trackler-2.2.1.114 tracks/perl5/exercises/anagram/.meta/solutions/Anagram.pm
trackler-2.2.1.113 tracks/perl5/exercises/anagram/.meta/solutions/Anagram.pm
trackler-2.2.1.111 tracks/perl5/exercises/anagram/.meta/solutions/Anagram.pm
trackler-2.2.1.110 tracks/perl5/exercises/anagram/.meta/solutions/Anagram.pm
trackler-2.2.1.109 tracks/perl5/exercises/anagram/.meta/solutions/Anagram.pm
trackler-2.2.1.108 tracks/perl5/exercises/anagram/.meta/solutions/Anagram.pm
trackler-2.2.1.107 tracks/perl5/exercises/anagram/.meta/solutions/Anagram.pm
trackler-2.2.1.106 tracks/perl5/exercises/anagram/.meta/solutions/Anagram.pm