這裏我想打印'$'標誌。怎麼做?
#!/perl/bin/perl
print <<EOF;
This sign $ is called dollar
It's a multiline
string
EOF
這是給我的結果。
This sign is called dollar
It's a multiline
string
我想打印$。
這裏我想打印'$'標誌。怎麼做?
#!/perl/bin/perl
print <<EOF;
This sign $ is called dollar
It's a multiline
string
EOF
這是給我的結果。
This sign is called dollar
It's a multiline
string
我想打印$。
使用EOF
相當於"EOF"
- 這裏的文檔被插入,就好像在雙引號中一樣。反斜槓美元符號\$
或明確使用單引號來抑制插值。
print << 'EOF';
...
EOF
當我使用print <<'EOF'時,它給我錯誤,找不到字符串終止符'EOF' –
不,現在它給了我那個錯誤,即使我不要使用$或引號。我很困惑! –
@karate_kid不要將引號放在關閉的'EOF'周圍。就在第一個。 'print <<'EOF'.... EOF' – TLP
運行你的代碼use warnings
打開給我:
Name "main::is" used only once: possible typo at foo.pl line 8.
Use of uninitialized value $is in concatenation (.) or string at foo.pl line 8.
This sign called dollar
It's a multiline
string
正如你所看到的,is
從句子了,所以是美元符號。警告告訴我爲什麼:在字符串內找到一個變量$is
。由於它是空的,它被替換爲空字符串。因爲你沒有打開警告,所以這是靜靜地完成的。
道德是:始終使用use warnings
。在這種情況下,還有一個好處是use strict
,因爲由於未聲明的變量$is
而導致腳本無法編譯。
至於如何解決它,我相信choroba有解決方案his answer。
你確定你沒有得到輸出'This sign called dollar'? – TLP
可能是你說得對。但是現在我根本無法運行代碼。給我錯誤無法找到字符串終止符'EOF' –