#!/usr/bin/perl
use strict;
use warnings;
my ($accumulator,$chat,$username,$chars,$timestamp);
my @output_lines = <STDIN>;
foreach (@output_lines)
{
$accumulator .= $_;
($chat,$username,$chars,$timestamp) = $accumulator =~ m/(?im)^\s*(.+)\s+(\w+[-,\.]\w+)\s+(\d+)\s+([0-1]?\d\/[0-3]?\d\/[1-2]\d{3}\s+[0-2]?\d:[0-5]?\d\s?[ap]m)\s*$/;
$chat =~ s/\s+$// if $chat; #remove trailing spaces
if ( $accumulator =~ /(?i)([0-2]?\d:[0-5]?\d\s?[ap]m)/ ) {
print "SECTION matched\n"; print "chat -> ${chat}\n"; print "username -> ${username}\n"; print "chars -> ${chars}\n"; print "timestamp -> ${timestamp}\n\n"; $accumulator = ''; # reset the line accumulator
}
}
IyEvdXNyL2Jpbi9wZXJsCgp1c2Ugc3RyaWN0Owp1c2Ugd2FybmluZ3M7CgpteSAoJGFjY3VtdWxhdG9yLCRjaGF0LCR1c2VybmFtZSwkY2hhcnMsJHRpbWVzdGFtcCk7CgpteSBAb3V0cHV0X2xpbmVzID0gPFNURElOPjsKCmZvcmVhY2ggKEBvdXRwdXRfbGluZXMpCnsKICAgICRhY2N1bXVsYXRvciAuPSAkXzsKCiAgICgkY2hhdCwkdXNlcm5hbWUsJGNoYXJzLCR0aW1lc3RhbXApID0gJGFjY3VtdWxhdG9yID1+IG0vKD9pbSleXHMqKC4rKVxzKyhcdytbLSxcLl1cdyspXHMrKFxkKylccysoWzAtMV0/XGRcL1swLTNdP1xkXC9bMS0yXVxkezN9XHMrWzAtMl0/XGQ6WzAtNV0/XGRccz9bYXBdbSlccyokLzsKICAgICRjaGF0ID1+IHMvXHMrJC8vIGlmICRjaGF0OyAgI3JlbW92ZSB0cmFpbGluZyBzcGFjZXMKCiAgICBpZiAoICRhY2N1bXVsYXRvciA9fiAvKD9pKShbMC0yXT9cZDpbMC01XT9cZFxzP1thcF1tKS8gKSB7CiAgICAgICAgcHJpbnQgIlNFQ1RJT04gbWF0Y2hlZFxuIjsKICAgICAgICBwcmludCAiLSJ4NzAsIlxuIjsKICAgICAgICBwcmludCAiJGFjY3VtdWxhdG9yIjsKICAgICAgICBwcmludCAiLSJ4NzAsIlxuIjsKICAgICAgICBwcmludCAiY2hhdCAtPiAke2NoYXR9XG4iOwogICAgICAgIHByaW50ICJ1c2VybmFtZSAtPiAke3VzZXJuYW1lfVxuIjsKICAgICAgICBwcmludCAiY2hhcnMgLT4gJHtjaGFyc31cbiI7CiAgICAgICAgcHJpbnQgInRpbWVzdGFtcCAtPiAke3RpbWVzdGFtcH1cblxuIjsKICAgICAgICAkYWNjdW11bGF0b3IgPSAnJzsgICMgcmVzZXQgdGhlIGxpbmUgYWNjdW11bGF0b3IKICAgIH0KfQoK
SGVsbG8gTGluZTEgRmlyc3ROYW1lLkxhc3ROYW1lIDEwIDMvMjMvMjAxMSAyOjQ2IFBNCgpIZWxsbyBMaW5lMgoKICAgICAgICAgICAgICAgICAgICAgTGluZTJGaXJzdE5hbWUtTGFzdE5hbWUgICAgICAgOCAgICAgICA3LzE3LzIwMTUgMToxNSBQTSAKTGluZTJUZXN0aW5nIC0gMTIzMjMyMzIzMjMgSGVsbG8gVGhlcmUKCkhlbGxvIExpbmUzIExpbmUzRmlyc3ROYW1lLkxhc3ROYW1lIDggMy8yMS8yMDExIDI6NDYgUE0KCkhlbGxvIExpbmU0CgogICAgICAgICAgICAgICAgICAgICBMaW5lNEZpcnN0TmFtZS1MYXN0TmFtZSAgICAgICA4ICAgICAgIDkvMTcvMjAxNSAxOjIwIFBN
Hello Line1 FirstName.LastName 10 3/23/2011 2:46 PM
Hello Line2
Line2FirstName-LastName 8 7/17/2015 1:15 PM
Line2Testing - 12323232323 Hello There
Hello Line3 Line3FirstName.LastName 8 3/21/2011 2:46 PM
Hello Line4
Line4FirstName-LastName 8 9/17/2015 1:20 PM