初めてのperl 第9章 正規表現によるテキスト処理 練習問題3

受け取ったファイル内のFredをWilmaに変更し、WilmaをFredに変更するプログラムを書きなさい。

#!/usr/bin/perl

use strict;
use warnings;

use 5.010;

$^I = ".copy";

while(<>){
 #swapを利用する際は、###や$$$など使わない(本文中で出てこない)ものを選択する必要がある。

  $_ =~ s/fred/###/gi;
  $_ =~ s/wilma/Fred/gi;
  $_ =~ s/###/Wilma/gi;

  print;
}

実行コマンドは以下の通りです。

$ ./practice3.pl names

namesファイルの内容は以下の通りです。

wilma&fred
fred$wilma

結果は以下の様になります。

Fred&Wilma
Wilma&Fred

※names.copyという名前のバックアップファイルが作成されます。