$string = 'ShELoVeSMeshElOvEsmeNOtsHeloVeSMEShELOVESmeNOTShEloVesmESheLovesMenoTsHELovEsMESHelOVeSmEnotSHeLOVeSMESHElOvESMENotSHeLoVesmEShELovEsmENOTsHELOVEsmEsHELOveSMeNoTshELOVeSmesHElOVesmEnOTSheLOvEsMeshELoVESmEnoTSHELOvEsM'; @strings = $string =~ /\w{8}/g; for( @strings ){ @string = split //; $bit = ""; for( @string ){ if( 'a' lt $_ ){ $bit .= '1' } else{ $bit .= '0' } } $letter = pack "B8", $bit; print "string: $_ bit: $bit letter: $letter\n"; }