print「$ foo」,「AAAAAAAA」,$ foo,「BBBBBBBB」;如何從插入字符串中的文本中分離Perl變量?
比方說,我想利用這個代碼用print <<EOF;
:
print <<EOF;
$fooAAAAAAAA$fooBBBBBBBB";
EOF
這是行不通的,因爲Perl的認爲我有一個名爲$ fooAAAAAAAA變量。當我有很長的打印測試時,如何輕鬆使用print <<
這樣的線條?
print「$ foo」,「AAAAAAAA」,$ foo,「BBBBBBBB」;如何從插入字符串中的文本中分離Perl變量?
比方說,我想利用這個代碼用print <<EOF;
:
print <<EOF;
$fooAAAAAAAA$fooBBBBBBBB";
EOF
這是行不通的,因爲Perl的認爲我有一個名爲$ fooAAAAAAAA變量。當我有很長的打印測試時,如何輕鬆使用print <<
這樣的線條?
使用${foo}
:
print <<EOF;
${foo}AAAAAAAA${foo}BBBBBBBB";
EOF
這裏的另一種方式使用printf
做到這一點:
printf << EOF, $foo, $foo;
%dAAAAA%dBBBBBBB
EOF
也就是說,假設你想打印$foo
爲十進制數。您可以用您需要的任何格式替換%d
。
另一個答案,基於非插值字符串,我認爲這是最合適的。
print <<'EOF';
$fooAAAAAAAA$fooBBBBBBBB";
EOF
作爲一個小不談,這種方法也適用於普通的字符串:打印 「$ {} foo的酒吧」; – user55400 2009-02-03 12:01:54