私は次のことをしようとしています。私は、所定のリスト上で「順序付け」として使用される予め定義されたリストを有する。指定された順序でリストをソートする方法は?
my @orderby = ('car', 'boat', 'chicken', 'cat', 'dog', 'mouse');
or
my %orderby = ('car' => 0, 'boat' => 1, 'chicken' => 2, 'cat' => 3, 'dog' => 4, 'mouse' => 5);
my @list = ('boat', 'car', 'mouse', 'chicken');
私はそれを並べ替える無限の方法を試みたが、私は何をしたいのか分からなかった。私はGoogleで検索しましたが、ここでは答えが見つかりませんでした。
@list
そのようにソートする必要があります
sort @list using %orderby
私は、ソート後にしたい印刷:
my @list = ('boat', 'car', 'mouse', 'chicken', 'mouse', 'car');
:
car, boat, chicken, mouse
ところで、@listは、エントリを重複していることができます
この場合、印刷する必要があります:
car, car, boat, chicken, mouse, mouse
皆さんには解決策がありますか? か、別のアプローチかもしれません。 ありがとうございます!確かに
ソリューションは重複を処理します。 – ikegami
はい、私はそれをテストしました!再びThx! – Jonathan