CGIでのループ処理に関して


下記のコードで試すと$hが増えていかないのはなぜでしょうか?
同じ行ばかり表示されてしまいます・・・。
$h = 0;
foreach(@a){
for $g(1..10) {
$i = $g + $h -1;
@f[1] =~ s/CODE$g/@c[$i]/g;
}
print @f[1];
$h = $h + 10;
}

どなたかご教授お願いいたします。

回答の条件
  • 1人50回まで
  • 13歳以上
  • 登録:2012/01/23 18:19:36
  • 終了:2012/01/23 18:39:28

ベストアンサー

id:taknt No.1

きゃづみぃ回答回数13538ベストアンサー獲得回数11982012/01/23 18:29:51

for文で変数の増分が書いてないからじゃないのかな?

id:BJ-AKI

for文の増分値なしは+1なので問題ありませんでした。
ご回答ありがとうございます!

2012/01/23 18:37:29
  • id:BJ-AKI
    一回目の

    @f[1] =~ s/CODE$g/@c[$i]/g;

    ですでに@f[1]が書き換わっているため、
    次のループ時に文字変換が行えない・・・という理由で自己解決しました。

    ありがとうございました!

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません