[問題] 開檔時需要底線當做檔名

看板Perl作者 (是黑是白)時間12年前 (2012/08/18 12:36), 編輯推噓4(404)
留言8則, 5人參與, 最新討論串1/1
請問一下 假使我要開新檔案,且新檔案的名字可能需要用到底線以及變數 例如 $filename; $version; open(OUT,">$filename_$version"); 這樣寫似乎會有錯誤... 請問該怎麼寫才可以呢 謝謝!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.116.1.134

08/18 12:39, , 1F
底線前面加反斜線可以嗎? 猜的...
08/18 12:39, 1F

08/18 12:46, , 2F
無法耶..
08/18 12:46, 2F

08/18 13:25, , 3F
open(OUT,">$filename"."_$version");
08/18 13:25, 3F

08/18 14:59, , 4F
Perl的設計者提供了標準方法:變數名用{}框起來,如:
08/18 14:59, 4F

08/18 15:00, , 5F
${filename}_$version,這樣,底線就不納入變數名的一部分
08/18 15:00, 5F

08/19 15:38, , 6F
$name = $filename . "_" . $version;
08/19 15:38, 6F

08/19 15:39, , 7F
open(OUT,">$name");
08/19 15:39, 7F

08/20 13:44, , 8F
謝謝大家!!
08/20 13:44, 8F
文章代碼(AID): #1GBnl3SG (Perl)