本文介绍了如何在Perl中将十六进制转换为char字符串的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我需要将%xx十六进制字符更改为chars。我正在尝试使用此代码,但它不起作用:
I need change the %xx HEX characters to chars. I am trying with this code but it does not works:
#!/usr/bin/perl -w
my $cadena = "%40%61%62";
print $cadena."\n";
$cadena =~ s/%//g;
print "cad: ".$cadena."\n";
my $string =~ s/([a-fA-F0-9][a-fA-F0-9])/chr(hex($1))/eg;
print "traducida: ".$string;
推荐答案
更改
my $string =~ s/([a-fA-F0-9][a-fA-F0-9])/chr(hex($1))/eg;
到
$cadena =~ s/([a-fA-F0-9][a-fA-F0-9])/chr(hex($1))/eg;
,以便在 $ cadena $ c $上进行搜索和替换c>。
输出: @ab
40 => @
61 => a
62 => b
这篇关于如何在Perl中将十六进制转换为char字符串的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!