作者nemay (may)
看板Perl
标题[问题] 欲以字串$XXXX作搜寻的条件怎麽写?
时间Wed Dec 9 21:03:10 2009
有个问题, 想请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