Don't know of a module, but if you are just looking at strings, the following code would work, printing each generated possibility only once:
#
# Assumes $word and $desired_length previously defined.
#
my @characters = split('', $word);
my (%found);
&gen_nofm(\@characters, \%found, '', $desired_length);
print($_, "\n")
foreach (sort({lc($a) cmp lc($b)} keys(%found)));
sub gen_nofm
{
my ($charlist,
$found_thusly,
$partial_word,
$desired_length) = @_;
if ($desired_length)
{
for (my $index = 0;
$index < scalar(@{$charlist});
$index++)
{
&gen_nofm($charlist,
$found_thusly,
$partial_word . ${$charlist}[$index],
$desired_length - 1);
}
}
else
{
${$found_thusly}{$partial_word}++;
}
}
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|