On Fri, Mar 3, 2017 at 9:30 AM, Peter Nikolaidis <pet...@paradigmcc.com> wrote: > Apparently I'm still doing something wrong and regex is kicking my butt. > > Sample message body: > ----------------------------------------- > * Stopping Asterisk PBX: asterisk > ...done. > * Starting Asterisk PBX: asterisk > ...done. > ----------------------------------------- > > Patterns I've tried: > ----------------------------------------- > 1: > (($self->TicketObj->Subject =~ /Cron \<root\@pbx\> \/etc\/init\.d\/asterisk > restart/) && # Successful cron jobs. > ($self->TicketObj->Body =~ /\* Starting Asterisk PBX\: > asterisk\n\.\.\.done\./m) > > 2: > (($self->TicketObj->Subject =~ /Cron \<root\@pbx\> \/etc\/init\.d\/asterisk > restart/) && # Successful cron jobs. > ($self->TicketObj->Body =~ /\* Starting Asterisk PBX\: > asterisk.*\.\.\.done\./ms)) > 3: > (($self->TicketObj->Subject =~ /Cron \<root\@pbx\> \/etc\/init\.d\/asterisk > restart/) && # Successful cron jobs. > ($self->TicketObj->Body =~ /^\* Starting Asterisk PBX\: > asterisk.*\.\.\.done\.$/ms)) || > ----------------------------------------- > > Any ideas?
#!/usr/bin/perl use strict; use warnings; my $sample_message_body = <<EOF; * Stopping Asterisk PBX: asterisk ...done. * Starting Asterisk PBX: asterisk ...done. EOF my $sample_message_body_2 = <<EOF; * Stopping Asterisk PBX: asterisk. ...done. * Starting Asterisk PBX: asterisk. ...done. EOF my $re = qr{ ^\*\s+Stopping\s+Asterisk\s+PBX:\s+asterisk$ \n ^\.\.\.done\.$ \n ^\*\s+Starting\s+Asterisk\s+PBX:\s+asterisk$ \n ^\.\.\.done\.$ }xms; if ($sample_message_body =~ $re) { print "MATCHES!\n"; } else { print "NOPE!\n"; } if ($sample_message_body_2 =~ $re) { print "MATCHES!\n"; } else { print "NOPE!\n"; } -m --------- RT 4.4 and RTIR Training Sessions https://bestpractical.com/training * Paris - April 24-26, 2017