我正在尝试将十六进制数字字符串转换为二进制字符串。如果我的输入字符串是41424344,那么我希望该字符串存储“ABCD”。怎么办呢?
答案 0 :(得分:14)
答案 1 :(得分:1)
规范方法是
$input_string =~ s/(..)/chr(hex($1))/ge;
从输入中一次读取两个字符,调用hex
(将十六进制数转换为十进制数),然后在每个输入上调用chr
(将十进制数转换为字符)。
答案 2 :(得分:1)
s/([a-f0-9][a-f0-9])/chr(hex($1))/egi;