Perlコーディング初心者質問スレ Part 44
■ このスレッドは過去ログ倉庫に格納されています
0739nobodyさん
2005/11/28(月) 17:59:22ID:cDaON9yM秩父
hogehoge 癒し系
松本
↓上のテキストを処理後、下のようにしたい↓
松島
秩父→hogehoge 癒し系
松本
処理の1つ先回りをして、対象の1つ前の行の先頭に「hogehoge」がある場合、対象の列とhogehogeが先頭に存在する列に対して指定の処理するようにしたいのですが、
for my $ii (0..$#text) {
if("hogehoge" eq substr($text[$tn+1],0,8)){
$text1 .= "$text[$ii]→$textall[$ii+1]\n";
$ii++;
}else{$text1 .= "$textall[$ii]\n";}
}
↑のように組んで実行したところ
松島
秩父→hogehoge 癒し系
hogehoge 癒し系
松本
のようになってしまいます。
ループのたびにmyで初期化してしまうため$ii++が無駄になってしまうために起こってると思うのですが、$ii++を生かすようにするには、どのように変えたらよいですか?
■ このスレッドは過去ログ倉庫に格納されています