[問題] 欲以字串$XXXX作搜尋的條件怎麼寫?
有個問題, 想請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
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):
Perl 近期熱門文章
PTT數位生活區 即時熱門文章