我的代码是我怎么能转换成字符串(十六进制)十六进制数在Perl
$str="000000a0";
$hex_num hex "$str";
我想设置的变量有或0X0A 我怎样才能得到它? 正则表达式? 删除全部为零
我的代码是我怎么能转换成字符串(十六进制)十六进制数在Perl
$str="000000a0";
$hex_num hex "$str";
我想设置的变量有或0X0A 我怎样才能得到它? 正则表达式? 删除全部为零
正如您已经看到的,您可以使用hex()
将十六进制字符串转换为数字值。
print hex $str; # displays "10"
使用printf()
用 “%x” 来格式化数字为十六进制数
printf '%x', hex $str; # displays "a"
添加 '0X' 到printf()
格式添加到输出
printf '0x%x', hex $str; # displays "0xa"
使用“02x”获得领先的零点
printf '0x%02x', hex $str; # displays "0x0a"
更新:如果要将结果存储在变量中,请使用sprintf()
而不是printf()
。
my $hex_num = sprintf '0x%02x', hex $str;
我想用a或0x0a设置变量我怎样才能得到它? – Alex
@Alex:看我的更新 –