$str = '#FE00FD'; $str =~ tr/0-9a-fA-F//cd; # remove non-hex characters my @rgb = unpack 'C*', pack 'H*', $str; # pack hex as 3 bytes, unpack into list of 3 character codes $" = ","; $\ = "\n"; print "(@rgb)";