表示されてしまいます。¥を指定するには、
何か特別な方法があるのでしょうか?
$dpass='c:\data\';
http://www.rfs.jp/sb/perl/02/02.html#エスケープシーケンスの使用方法
コメントが付けられないみたいなので これにはポイントなくていいです。
例えば
print "テスト\n";
は
テスト
↓(改行)
と表示されると思います。
これを
print 'テスト\n';
とすると
テスト\n
こんな風にエスケープシーケンスが解釈されない事になります。
でました。ありがとうございます。 ’ と ”の違いってなんなんでしょうか、
に対する返答。
ダブルクォート ["]は\はメタ文字の展開と、変数の展開をするための引用符です。
例
print "$_\n" for 0..100;
つまり、変数をそのまま指定すれば、ダブルクォート中ではそのまま表現されると言う事ですね。
また、メタ文字は、\ + 文字で構成され、特殊な文字を表現するのに使います。
例えば、以下のようなものが有ります。
\n = 改行、\b = バックスペース、\t = タブ
また、\はもう一つ、エスケープシーケンスと呼ばれる使い方もします。
例えば、上記理由から[\]そのものを表したい時には、"\\"や、
[$]そのものを表したい時には、"\$"のように使用します。
例
print "\$_\\n" . "\n" for 0..100;
引用符(ダブルクォートや、シングルクォート)中に引用符自身を、
表現する場合には、\'や、\"のようにします。
例えば、
xyzzy"xyzzy = "xyzzy\"xyzzy"(ややこしい場合には'xyzzy"xyzzy'でも可)
xyzzy'xyzzy = 'xyzzy\'xyzzy'(ややこしい場合には"xyzzy'xyzzy"でも可)
のような感じです。
以上、参考になりましたか?
詳しい事を知りたい場合には、以下の書籍をお勧めします。
http://www.amazon.co.jp/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%...
> ’と ”の違いってなんなんでしょうか
' は変数展開不可なリテラル、" は変数展開可なリテラルです。
http://www.rfs.jp/sb/perl/02/02.html#6%EF%BC%8E%E3%82%AF%E3%82%A...
展開可の構文は、ダラー( $ ) やアットマーク( @ ) で始まる変数、エスケープシーケンスを展開します。バッククォートはダブルクォートの中では展開されません。また、シングルクォートがダブルクォートの中で使われても、変数の展開を妨げることはありません。
つまり、
$a = 'hoge';
print "a=$a\n";
print 'a=$a\n';
とした場合、
a=hoge
a=$a\n
と表示されます。
しかし、' であっても \' は例外的にエスケープシーケンス展開されます。
このため、~\'; では ' という文字そのものを意味してしまい、リテラルが終了したと解釈されないのです。
でました。ありがとうございます。 ’ と ”の違いってなんなんでしょうか、