use Text::Abbrev;
%hash = ();
abbrev(*hash, LIST
);
The abbrev()
routine takes each string in LIST
and
constructs all unambiguous abbreviations (truncations) of the string
with respect to the other strings in LIST
. Each such truncation
(including the null truncation consisting of the entire string) is used as
a key in %hash
for which the associated value is the non-truncated
string.
So, if good
is the only string in LIST
beginning with
g
, the following key/value pairs will be created:
g => good, go => good, goo => good, good => good
If, on the other hand, the string go
is also in the list, then
good
yields these key/value pairs:
goo => good, good => good
and go
yields only:
go => go