Perl 包模板 'a' 重复

标签 perl pack

我需要提取一系列两个字符(我将其传递给解包,因为它们实际上是 BCD 的一种奇怪形式)。我当前使用的是:

my @whatever = unpack('a2 a2 a2 a2 a2 a2 a2', get_bcd_string());

看来我不能使用像 [6] 这样的东西作为 a2 的重复因子,但我想确认一下。

我意识到我可以使用 a12 提取到字符串中并拆分字符串,但我正在尝试了解是否可以更有效地使用 unpack。

谢谢

最佳答案

这就能解决问题:

unpack '(a2)6'

如果您只想解压整个字符串,可以使用以下内容:

unpack '(a2)*'

关于Perl 包模板 'a' 重复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11867120/

相关文章:

nuget - dotnet 包 : version format

mysql - Perl 脚本无法在 @INC 中找到 Text/Template.pm

linux - 在 Linux 服务器上将 Excel 提取为文本

php - 当 pecl4win 关闭时从哪里获取 php_perl.dll?

c# - 图像未绑定(bind)到资源。如何使用 Relativesource 进行绑定(bind)

java - Java 中具有非十六进制字符的等效 Perl 包 ("H*")

perl - 是否可以使用 while(my($key, $value) ... ) {} 方法按排序顺序遍历哈希?

perl - 是否可以根据数组的大小动态扩展标量分配?

PHP:从字符串中提取压缩的十六进制数

Ruby 的打包和解包解释