use Modern::Perl; while () { chomp; do { say "Not a valid file, Check output!"; next } if /[^0-9A-F]/; do { say "All zeroes or empty, Check output!"; next } if /^0*$/; say '==', join "\n==", /(..)/g; } __DATA__ 00000FFEDFF67FFB8FF96FFE200BBFF240020FFBAFF360132FF6500FCFED30079 000000000000000000000000000000000 THIS IS NOT A HEX DUMP