[問題] 要加入的字串重覆了

看板Perl作者 (111)時間15年前 (2010/06/04 00:57), 編輯推噓2(202)
留言4則, 3人參與, 最新討論串1/2 (看更多)
最近開始學perl Learning perl習題的ch9.no5. 寫一個程式在裡面加上版權宣告## copyright (C) by xx 一定要寫在開頭的#!perl的下一行 如果已經有版權宣告的檔案就不需再更動 以下是我寫的... $in=$ARGV[0]; $^I=".bak"; while(<>){ if(/copyright (C) by me/i){ print "$_"; } else { if(/^#!/im){ $_ .= "## copyright (C) by xx\n"; } print "$_"; } } 可是如果檔案已經有版權宣告 他會再加上一個... 請問這是為什麼會這樣?好困惑 謝謝瞜 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.251.200.121 ※ 編輯: cindy1120 來自: 111.251.200.121 (06/04 00:58)

06/04 02:20, , 1F
建議你把你要修改的檔案內容也附一下
06/04 02:20, 1F

06/04 13:54, , 2F
檔案只是隨便寫的...只是亂打一些字還有在第一行寫上#!
06/04 13:54, 2F

06/04 13:54, , 3F
第二行是## copyright (C) by xx
06/04 13:54, 3F

06/04 14:22, , 4F
因為是 while (<>) { 對每一行做什麼動作; }
06/04 14:22, 4F
文章代碼(AID): #1C1zyGx4 (Perl)
討論串 (同標題文章)
文章代碼(AID): #1C1zyGx4 (Perl)