q//, qq//, qw//は「/」と「/」の間の値を返す関数ですが、処理の仕方に違いがあります。
q//の場合はシングルクォーテーションで書かれたものと見なして値を返します。
qq//の場合はダブルクォーテーションで書かれたものと見なして値を返しますのでもし変数名が入っている場合はその変数の中身を返します。
qw//の場合はqq//と同じですが、文字と文字の間に半角スペースを入れることにより、配列で値を返すことになります。
-例- # q// の場合 my $str = q/string1/; print $str ; # 結果は string1
# qq//の場合 my $sting1 = 'test'; my $str = qq/$sting1/; print $str ; # 結果は test
# qw//の場合 my $sting1 = 'test'; my $sting2 = 'test2'; my @str = qq/$sting1 $sting2/; print $str[0] $str[1] ; # 結果は test test2
猫の手 高室(たかむろ) |