使用Perl脚本从文件中读取一行数据并显示?

时间:2011-08-18 15:23:43

标签: perl

我需要一些我正在尝试创建的脚本的帮助。基本上我有大约30个txt文件,每个文件都有一个电子邮件地址字段。例如:

example@hotmail.com

我希望能够使用Perl脚本读取所有30个txt文件,并返回所有电子邮件地址的列表。

每个txt文件都位于同一位置,其名称如下:
1.txt,2.txt等 非常感谢任何帮助。

1 个答案:

答案 0 :(得分:2)

你知道任何Perl吗?我不介意帮助别人解决他们的问题,但编写代码是我的工作,我喜欢为此付出代价。

以下是一些提示:

  • 要读入文件,请使用File::Find模块。这将帮助您找到需要阅读的所有文件。
  • 您可以使用哈希来保证唯一的电子邮件地址。

例如:

my %emailHash;
while (my $line = <FILE>) {
    chomp $line;
    if ($line =~ /[^[^\@]+\@[^\@]+\.[\w+]$/) {   #Email address
        $email{$line} = 1;
    }
}

现在,您可以使用keys功能将其打印出来:

 foreach my $email (sort keys %emailHash) {
    print "Email: $email\n";
 }