[問題] 欲以字串$XXXX作搜尋的條件怎麼寫?

看板Perl作者 (may)時間15年前 (2009/12/09 21:03), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/2 (看更多)
有個問題, 想請PERL版的前輩們給點指教... 我寫了一個程式, 期望它功能如下所述: 首先讀取檔案內容, 取得每一個開頭為TREND_DEF的字串, [0] [1] [2] [3] TREND_DEF XXXXXXX XXXXXX TREND_DEF XXX XXXXXX XXXXXX XXXXXXX TREND_DEF XXXXX XXXXXX XXXXXX . . . XXXXXXX 99999 XXX 88888 XXXXX 7777 將每個字串split後,第[1]項都丟進陣列當作字串比對的key word 再使用每個key word去搜尋開頭為"key word"的字串 但是遇到一個問題!! (如下面程式紅色標記部分) 正規表示式中, 如果欲以字串作為搜尋的條件要怎麼寫呢?? ======================================================= #!/usr/bin/perl; use strict; use warnings; open INPUT,"<XXX.log" || warn "OPEN FAIL:$!"; open OUTPUT,">XXX.txt" || warn "Can't creat file :$!"; while(<INPUT>) { my @return = &searchitem($_); my $search = $return[1]; if ($_ =~ m/{^$search}/) { my $data = $_ ; print OUTPUT "data\n"; } } close INPUT; close OUTPUT; sub searchitem { my $search = shift; if ($search =~ /(^TREND_DEF)/) { my @item = split (/\s+/, $search); return @item; } } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.133.40.109
文章代碼(AID): #1B7w0Gzj (Perl)
文章代碼(AID): #1B7w0Gzj (Perl)