我使用Perl和我得到的字符串:如何十六进制转换为字符串在Perl
AGN \ u00e8s b
我怎样才能将其转换为
agnèsb
?
我试过使用下面的代码。
my $hex = "agn\u00e8s b";
$hex =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C",hex($1))/eg;
print "$hex\n";
但它失败并显示出一些奇怪的字符。更重要的是,我还需要展示中文单词。例如,
\ u9eb5 \ u5305
如何将其转换为以下?
面包
如果上面的代码被包含在一个文件中,最后一行在上面,然后是三行,那么它产生了输出:agn00e8s b。既然您要求对输出进行编码,那么文件中有什么不妥之处呢? – stackoverflowery
@Neeraj Tuteja,这是因为OP的输入(我盲目复制)是不正确的。固定。对不起,我之前没有注意到你的评论。 – ikegami