【发布时间】:2013-10-21 14:41:20
【问题描述】:
这是我的电子邮件正则表达式的伪代码: 多个字符 + 一个 @ 符号 + 多个字符 + 一个 .符号 + 2 到 6 个字符的单词
此电子邮件前后必须有 1 个空格 您可以每行有多个电子邮件,并阅读整个文件的电子邮件。
到目前为止:
open (MYFILE, 'data.txt');
while (<MYFILE>) {
chomp;
my @words = split(' ');
foreach my $word (@words) {
if($word =~ /.+@.+\..{2,6}/) {
print "$_\n";
}
}
}
我认为我的问题在于我的正则表达式以及我对文件的阅读。 我想我把每一行都变成了一个字符串,因为一些结果像 blah@blah.com blah 出现了,所以单词没有分开?
【问题讨论】:
-
@Biffen
Mail::RFC822::Address在其天才之处告诉我2@2是一个有效的电子邮件地址。太搞笑了! -
@CaptSaltyJack 那是因为它是一个有效的电子邮件地址。
标签: regex perl email-validation