3

バックグラウンド

1 つの関数に抽出しようとしている次の 4 行のコードがあります。

my @firstList = split /\s+/, $doubleArray{A_I}{B_I};
@firstList = shuffle(@firstList);
my @secondList = split /\s+/, $doubleArray{A_I}{C_I};
@secondList = shuffle(@secondList);

機能的な違いは2次元配列の2番目のインデックスだけなので、2番目のインデックス(「B_I」と「C_I」)を関数に渡すようにしたかったのです。

提案された解決策

言い換えれば、私は以下のような関数を作りたいです:

my funkyFunc($){
     my $index = shift;
     my @list = split /\s+/, $doubleArray{A_I}{$index};
     @list = shuffle(@list);
     return @list;
}

私はそれを次のように使用するつもりです:

my @firstList = funkyFunc("B_I");
my @secondList = funkyFunc("C_I");

"B_I"ただし、perl がor "C_I"、または同様B_Iに andをどのように解釈するかはわかりませんC_I。この複雑さのために、私は知りたかった...

質問

perl で配列インデックスの名前を渡す方法はありますか?

4

1 に答える 1