group elements by similarity
I wrote some awesome useful subs and put them in String::Similarity::Group, it lets you provide a list of strings, and groups or isolates by similarity.
You can also provide a list of strings, and it tells you which is the closest match to a control string.
There’s also a cli interface called gbs, you could group files by similarity for example.
$ ls ./ | gbs
Basic API usage is..
use String::Similarity::Group 'groups'; use Smart::Comments '###'; my @groups = groups( 0.8, qw/james joe jimmy vanessa carla vanesa kuiper MAarchus archus/ ); ### @groups
use String::Similarity::Group 'similarest'; use Smart::Comments '###'; my ($closest, $score) = similarest( qw/james joe jimmy vanessa carla vanesa kuiper MAarchus archus/, 'James' ); ### $closest ### $score
