Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask
 
PerlMonks  

Re: Finding similar data

by davidj (Priest)
on Jun 14, 2005 at 06:57 UTC ( #466412=note: print w/replies, xml ) Need Help??


in reply to Finding similar data

You could use the substr method to get the first 3 letters and use a hash of arrays to store the matching strings. While probably not the most efficient, the following might be a good place for you to start:
#!/usr/bin/perl use strict; use Data::Dumper; my (@words, $substr, %hash); @words = qw/sem sema cat semok hgt cato seme cate/; foreach (@words) { $substr = substr( $_, 0, 3 ); push( @{ $hash{$substr} }, $_ ); } print Dumper(\%hash); exit; $VAR1 = { 'cat' => [ 'cat', 'cato', 'cate' ], 'sem' => [ 'sem', 'sema', 'semok', 'seme' ], 'hgt' => [ 'hgt' ] };

hope this helps,
davidj

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://466412]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others scrutinizing the Monastery: (2)
As of 2019-04-19 22:55 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    I am most likely to install a new module from CPAN if:
















    Results (107 votes). Check out past polls.

    Notices?
    • (Sep 10, 2018 at 22:53 UTC) Welcome new users!