【发布时间】:2014-02-12 13:44:41
【问题描述】:
#!/usr/bin/perl
use strict;
use warnings;
main(@ARGV);
sub main
{
open(FH,"<", 'thefile.txt') or die;
my $filTMP=undef;
while(<FH>){
chomp();
$filTMP=<FH>;
if( $filTMP=~ /\!/){ # extracting all exclamation marks.
print $filTMP;
}
}
}
我的新手代码的问题是列表中的第一个匹配单词被显示,但之后出现了愤怒的红色文本“模式匹配中的未初始化值 $filetmp (m//)”。据我所见, $filTMP 已初始化。需要帮助:)。
【问题讨论】:
-
你从命令行读入了什么?
-
问题是您在两个不同的位置读取一行 (
<FH>)。
标签: regex perl file-handling