# read data to $input
my $input = <main::DATA>;
# set $d to be zero
my $d = 0;
# assign $input to $_
$_ = $input;
# with $_ do the following:
# find all regex matches for d+/d+/d4, where d+ is one or more digits and d4 are 4 digits
# and with each occurrence check if yyyymmdd is larger then $d
# and if so, assign it to $d
s/\s(\d+)\/(\d+)\/(\d{4})\s/{$d = 10000*$3+100*$1+$2 if $d < 10000*$3+100*$1+$2}/eg;
# print date $d
#data to be read by code above
__DATA__
File:tfo.supplement.20120901.done 9/1/2012 3:48:00 AM
File:tfo.supplement.20120901.zip 421144 KB 9/1/2012 3:48:00 AM
File:tfo.supplement.20120904.done 9/4/2012 3:57:00 AM
File:tfo.supplement.20120904.zip 421794 KB 9/4/2012 3:57:00 AM
File:tfo.supplement.20120905.done 9/5/2012 3:28:00 AM
File:tfo.supplement.20120905.zip 421875 KB 9/5/2012 3:28:00 AM
IyByZWFkIGRhdGEgdG8gJGlucHV0CiQvID0gdW5kZWY7Cm15ICRpbnB1dCA9IDxtYWluOjpEQVRBPjsKCiMgc2V0ICRkIHRvIGJlIHplcm8KbXkgJGQgPSAwOwoKIyBhc3NpZ24gJGlucHV0IHRvICRfCiRfID0gJGlucHV0OwoKIyB3aXRoICRfIGRvIHRoZSBmb2xsb3dpbmc6CiMgZmluZCBhbGwgcmVnZXggbWF0Y2hlcyBmb3IgZCsvZCsvZDQsIHdoZXJlIGQrIGlzIG9uZSBvciBtb3JlIGRpZ2l0cyBhbmQgZDQgYXJlIDQgZGlnaXRzCiMgYW5kIHdpdGggZWFjaCBvY2N1cnJlbmNlIGNoZWNrIGlmIHl5eXltbWRkIGlzIGxhcmdlciB0aGVuICRkCiMgYW5kIGlmIHNvLCBhc3NpZ24gaXQgdG8gJGQKcy9ccyhcZCspXC8oXGQrKVwvKFxkezR9KVxzL3skZCA9IDEwMDAwKiQzKzEwMCokMSskMiBpZiAkZCA8IDEwMDAwKiQzKzEwMCokMSskMn0vZWc7CgojIHByaW50IGRhdGUgJGQKcHJpbnQgJGQ7CgojZGF0YSB0byBiZSByZWFkIGJ5IGNvZGUgYWJvdmUKX19EQVRBX18KRmlsZTp0Zm8uc3VwcGxlbWVudC4yMDEyMDkwMS5kb25lICAgOS8xLzIwMTIgICAgMzo0ODowMCBBTSAKRmlsZTp0Zm8uc3VwcGxlbWVudC4yMDEyMDkwMS56aXAgICAgNDIxMTQ0IEtCICAgOS8xLzIwMTIgICAgMzo0ODowMCBBTSAKRmlsZTp0Zm8uc3VwcGxlbWVudC4yMDEyMDkwNC5kb25lICAgOS80LzIwMTIgICAgMzo1NzowMCBBTSAKRmlsZTp0Zm8uc3VwcGxlbWVudC4yMDEyMDkwNC56aXAgICAgNDIxNzk0IEtCICAgOS80LzIwMTIgICAgMzo1NzowMCBBTSAKRmlsZTp0Zm8uc3VwcGxlbWVudC4yMDEyMDkwNS5kb25lICAgOS81LzIwMTIgICAgMzoyODowMCBBTSAKRmlsZTp0Zm8uc3VwcGxlbWVudC4yMDEyMDkwNS56aXAgICAgNDIxODc1IEtCICAgOS81LzIwMTIgICAgMzoyODowMCBBTQ==