UC перед сортировкой на карте - PullRequest
0 голосов
/ 03 декабря 2010
map{ chomp; $isword{uc join "", sort /./g} .= "$_+" } <FH>;

Как правило, он использует элементы в файле, сначала сортирует, затем uc, затем добавляет в hashmap.

Но я хочу сначала uc, а затем сортировать.

Делает что-нибудьзнаете, как это сделать?

Ответы [ 2 ]

1 голос
/ 03 декабря 2010

В соответствии с духом краткости вы достигли:

map{ chomp; $isword{join "", uc =~ sort /./g} .= "$_+" } <FH>;
0 голосов
/ 03 декабря 2010

Попробуйте:

#!/usr/bin/perl
use 5.10.1;
use strict;
use warnings;
use Data::Dumper;

my %isword;
map{ chomp; my $c=$_; $_=uc$_; $isword{join "", sort /./g} .= "$c+" } <DATA>;
say Dumper \%isword;
__DATA__
cbA zyx
DEF tuv
Ghi PQr

Вывод:

$VAR1 = {
          ' GHIPQR' => 'Ghi PQr+',
          ' DEFTUV' => 'DEF tuv+',
          ' ABCXYZ' => 'cbA zyx+'
        };
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...