112003
如何对文本中得相应行的某个字段进行比较运算??
如下文本:
14:26:51 BEGIN abc
14:27:38 END abc
14:30:25 BEGIN hig
14:30:26 END hig
14:34:48 BEGIN figer
14:35:31 END figer
14:37:46 BEGIN hot
14:38:36 END hot
最后一列为标示,标示相同的两行的第一列的相应2个字段进行相减运算(END对应的time减BEGIN对应的time)。如果以标示列为keys,相应的第一列为values,用hash 能否实现?刚接触perl不久,有哪位大大能解决下?
有好的思路或方法能否高知。非常感谢!!!
输出:
14:27:38 - 14:26:51结果 abc
14:30:26 - 14:30:25 hig
。。。。。。。
converse
[code]
my $start="BEGIN";
my $end="END";
my $text;
my $flag=0;
while (<DATA>)
{
if ( (/$start/ .. /$end/) )
{
my @temp = split;
if ($flag)
{
$text .= "-" . $temp[0] . " " . $temp[2];
print $text, "/n";
$flag = 0;
$text = undef;
}
else
{
$text = $temp[0];
$flag = 1;
}
}
}
__END__
14:26:51 BEGIN abc
14:27:38 END abc
14:30:25 BEGIN hig
14:30:26 END hig
14:34:48 BEGIN figer
14:35:31 END figer
14:37:46 BEGIN hot
14:38:36 END hot
[/code]