0

繰り返しますが、一日中、私は再び立ち往生しています。

メールアドレスに表示できない禁止されている単語を含む単語または変数の配列を使用する必要があります。

また:

$baddies = 'smtp mailer sysop';

また

@baddies = qw(smtp mailer sysop);

また

@baddies = qw/smtp mailer sysop/;  

配列にはさらに悪い言葉があり、約2ダースです。

私は最新バージョンのperlを実行していないので、~~などはサポートされていません。

バンドのスケジュールを送信するループが発生しています。

そのループでは、電子メールにこれらの単語が含まれているかどうかを確認する必要があります。一致するものを含む良いメールがあるかもしれませんが、それは問題ありません。

私はそれを理解しようとするのをあきらめた後、文字通り何十もの例を試しました。

最新のものは:

####FYI## $uaddress is from the foreach $uaddress(@addresses){ loop.

my %params = map { $uaddress => 1 } @baddies;
if(exists($params{$uaddress})) {
print "yep, it's there"; #for testing
push(@failed,"$uaddress is restricted<br />");

しかし、私が試したすべては、私が必要とすることをしません。

=〜なども試してみました。

私は今について本当に愚かだと感じています。

ここで別のレッスンが必要です。よろしくお願いします。

更新:私も試しました:

$baddies = 'smtp mailer sysop';
 my @baddies = split / /, $baddies;
 # iterate through the array
  foreach (@baddies) {
   if($_ =~ $uaddress) #I also reversed that {
   print qq~$uaddress contains $_~;
   }
  }
4

1 に答える 1

0

試行錯誤とばかげた運のおかげで、私は偶然に以下のように動作するようになりました:

foreach $uaddress(@addressList) {
 $uaddress =~ s/\s//g;
    @baddies = qw(smtp mailer sysop);
    my @failed;
     foreach (@baddies) {
      if($uaddress =~ m/$_/i) {
       push(@failed,"$uaddress is restricted because it found \"$_\" in the address<br />");
      }
    }
##stuff happens with emails that passed like Email::Verify
}
于 2012-08-01T13:05:16.833 に答える