### INIT pragma use strict; use warnings; ### PROCESS my @array = ; map { (0)?() : (/good stuff/) ? do{print "DO STUFF\n";} : (/[^a-z]+/) ? do{print "BAD STUFF: -> $_";} : do{} ### do nothing } @array; ### SAMPLE output q^*******************q DO STUFF BAD STUFF: -> garbage DO STUFF BAD STUFF: -> unknown BAD STUFF: -> BAD STUFF: -> the previous line is blank DO STUFF DO STUFF q********************q^if(0); __DATA__ good stuff garbage good stuff unknown the previous line is blank good stuff good stuff