#!/usr/bin/perl -w use strict; use Email::Delete qw(delete_message); my @subject_list = ( '^DELIVERY FAILURE.*$' , '^Delivery Notification: Delivery has failed' , '^Delivery Status Notification.*$' , '^Mail delivery failed: returning message to sender' , '^Mail delivery failed: returning message to sender' , '^Message you sent blocked by our bulk email filter' , '^Returned mail: see transcript for deta.*' , '^Returned mail: see transcript for details' , '^Undeliverable:.*$' , '^Undelivered Mail Returned to Sender$' , '^Undelivered Mail Returned to Sender' , '^failure notice$' , 'failure notice' , ); { local $" = '|'; print "@subject_list" , "\n"; delete_message from => '/home/chad/Mailbox', matching => sub { my $message = shift; local $" = '|'; $message->header('Subject') =~ m/"@subject_list"/; }; }