我最近编写了一个脚本,它解析单个二进制字节月份字段的文本表示。
(不要问:-{)
在摆弄 sprintf 一段时间后,我放弃了并这样做了;
our %months = qw / x01 1
x02 2
x03 3
x04 4
x05 5
x06 6
x07 7
x08 8
x09 9
x0a 10
x0b 11
x0c 12 /;
...
my $month = $months{$text};
我侥幸逃脱了惩罚,因为我只使用了 12 个数字,但是有更好的方法吗?
如果你有
$hex_string = "0x10";
您可以使用:
$hex_val = hex($hex_string);
你会得到:$hex_val == 16
hex
不需要“0x
" 在字符串的开头。如果缺少它,它仍然会将十六进制字符串转换为数字。
您还可以使用oct
根据前缀将二进制、八进制或十六进制字符串转换为数字:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)