【发布时间】:2011-03-16 21:40:49
【问题描述】:
我是 Perl 开发的新手,我想执行以下任务:
我的脚本接收十六进制编码的字符串作为命令行参数。然后我必须解码这个字符串并将其写入输出文件,如 C++ 数组,并根据给定的数据进行初始化。例如:
perl myscript.pl DEADBABEDEADBEEF
和输出类似
const boost::array<char, 8> MyArray = { 0xDE, 0xAD, 0xBA, 0xBE, 0xDE, 0xAD, 0xBE, 0xEF };
使用 Perl 正则表达式的正确方法是什么?当然,我可以用子字符串循环执行它,但我相信应该有更优雅的方式。
编辑:输入字符串是固定长度的。
【问题讨论】:
-
分割/映射呢?除非您确定输入字符串的长度是固定的,否则我怀疑 regexp 是否是一个不错的选择。
-
是的,在这种情况下,我确信我的输入字符串是固定长度的。我会更新问题。