Perl: sort string alphabetically, or remove dupe chars?
Parv
parv at pair.com
Wed Apr 26 03:05:26 UTC 2006
in message <ef10de9a0604251754r3292719dqc29d96095a9f0752 at mail.gmail.com>,
wrote Nikolas Britton thusly...
>
> On 4/25/06, Nikolas Britton <nikolas.britton at gmail.com> wrote:
> > basically what I want to do:
...
> > my $wordlist = "letter";
> > ## some whizbang regex that removes dupe chars
> > ## from words like "alphabetically" --> "alphbeticy".
> > print "$wordlist\n";
...
> This works... but it's clunky:
>
> my $string = "letter";
> my @chars = split("", $string);
> $string = ""; @chars = sort (@chars);
> foreach (@chars) {
> $string .= $_;
> }
> $string =~ tr///cs;
> print "$string";
You could combine some of the steps ...
my $string = 'letter';
$string = join '' , sort split '', $string;
$string =~ tr///cs;
print $string;
... another but rather clunky version is ...
my $string = 'letter';
{
my %string;
@string{ split '' , $string } = ();
$string = join '' , sort keys %string;
}
print $string;
- Parv
--
More information about the freebsd-questions
mailing list