これが私のコードです:
#!perl -w
use strict;
my %hash = (
1 => "a",
2 => "b",
);
foreach my $num ( keys %hash ) {
while (<DATA>) {
s/$num/$hash{$num}/g;
print;
}
}
__DATA__
121212
11111
222
すべての数値を、ハッシュに存在する対応する値に置き換えるつもりです。しかし、それは出力します:
a2a2a2
aaaaa
222
Hit any key to close this window...
foreachループが1回だけ実行されるのはなぜですか?誰が私にそれを説明できますか?そして、どのようにコードを変更する必要がありますか?出力したい:
ababab
aaaaa
bbb
前もって感謝します。