質問: $1; のような感じで出てくる、$1ってどういう変数なのでしょうか? どういったときに用いられるのでしょう? また、=~ というのは、どういう意味なのでしょうか? どなたか、ご教授下さいませ。 よろしくお願い致します。
回答: $1 は後方参照用の特殊変数です。 括弧つきのパターンマッチを実行した後で、マッチした文字列を参照できます。 /yahoo|google/ と書くと、「yahoo」または「google」という文字列を探します。 これに括弧を付けて、 s/(yahoo|google)/$1 japan/g と書くと、「yahoo」を「yahoo japan」に、「google」を「google japan」に変換します。つまり「見つけたのは何だったのか?」を後から知る(参照する)ことができます。(後方参照) 後方参照せずに、普通の括弧の働き、つまり単にグループ化させたいだけなら (?:~) と書きます。 =~ は、デフォルトではパターンマッチングは変数 $_ に対して行いますが、それ以外の変数に対して行いたいときに、結びつけるための演算子です。 =~ の真偽が逆になるのが !~ です。 これらはperlの基本ともいえるので、しっかり習得されてから進めることをおすすめします。