问题标签 [perl-data-structures]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
perl - Perl:关于 hashmap 的基本问题
我只是 perl 的初学者,我需要这个表达式的帮助,这个表达式是什么意思?我假设将创建一个新的键/值对,但这里的 1 是什么意思?
perl - 遍历 Perl 集合,计算新值
我有一个 Perl 脚本,其中包含以下行:
在程序的其他地方编辑@irqs
的某种集合(我不是 Perl 程序员)在哪里push
。
我有另一个集合,它是一个散列,其中键等于集合的值$_->{label}
或$_->{irq}
来自集合的值@irqs
。
而不是$_->{count}
在上面的语句中打印,我想打印哈希值在$_->{count} - X
哪里。X
我确信我可以通过@irqs
手动迭代并使用计算值将其中一个$_->{label}
或$_->{irq}
推入一个新集合来做到这一点,但是,有没有更好的方法来做到这一点?
正如我所说,我不是 Perl 程序员,所以我只是想确保在开始之前我走的是正确的道路......
arrays - 如何将“哈希数组”的所有元素作为数组传递给函数
如何将“哈希数组”的元素作为数组传递给函数?
例如,我想将 all$link->{text}
作为数组传递给sort()
函数。
perl - 在 PERL 中如何将记录拉入数组
在 perl 中,
我有表,我有 RANGE1、RANGE2 和 6 左右的记录等字段,
我想将这 6 条记录放入数组中,类似于
如何将记录拉入数组,
perl - 在 Perl 中动态/递归地构建散列?
我对 Perl 很陌生,我正在尝试以递归方式构建散列并且无处可去。我尝试搜索动态构建散列的教程,但我能找到的只是关于散列的介绍性文章。如果您指出我正确的方向或建议一篇不错的文章/教程,我将不胜感激。
我正在尝试从具有以下形式的路径的文件中读取
我想建立一个像
我目前使用的脚本是:
arrays - 在 Perl 中删除和添加哈希和数组引用
继续我之前的问题,我遇到了另一个问题。我意识到不仅哈希中应该有哈希,哈希中也可以有数组。所以路径会是这样的
即散列应该包含该数组将始终以 a[]
作为其后缀。根据我正在使用的脚本(我之前问题的答案的略微修改版本),上述路径将导致:
我正在使用的脚本是:
我想做的是,一旦找到two[]
,我想将其删除two
并将其添加到two[]
(如果two
存在)的数组中,然后将键重命名two[]
为two
.
所以最终结果看起来像:
因此,我尝试在if else
用于检查带有或不带有[]
后缀的键中添加检查,但我得到了一个范围或错误[$variable] is not a valid HASH reference
,例如等。如何检查变量的类型(例如$ref->{$head} is array?
)并有效地删除和重命名散列的键?
谢谢。
perl - 如何在perl中按字母顺序获取所有子目录中所有html文件的列表?
目前我正在这样做:
但是我想按字母顺序处理所有文件,最终我想将所有文件名存储在一个数组中,对数组进行排序,然后使用 for each 循环并将我的处理代码放在那里,但我完全不知道如何做。
我已经做了很多谷歌搜索,但就像 perl 中的其他所有内容一样,有 100 种方法可以做所有事情,但似乎没有一个能让我做我想做的所有事情,即所有以 .html 结尾的文件,所有子目录在特定目录中,并根据文件名而不是目录结构按字母顺序排序。
谁能帮我吗?我知道这可以很容易地完成,我只是想不通。
谢谢 :)
编辑:我试过这样做:
但是,如果我对数组 @files 进行排序,它将根据整个字符串对其进行排序,我只想根据文件名对其进行排序。我不认为有办法用 File::find:find 来做,因为在遍历所有文件之前它无法知道顺序是什么,所以我需要在之后进行排序。
perl - 在 Perl 的哈希中包含哈希
节日,
我目前正在从许多较小的散列中创建大散列。假设这些较小的散列分别定义在一个文件中,然后可以包含在较大的散列中。
例如,让我们看一些小的哈希
文件personcontact.pl
:
文件address.pl
:
我有很多这样的......
我尝试重新创建哈希的方式是使用include
子例程,如下所示:
我知道我一定做错了什么,但我不确定是什么。我不断收到类似Useless use of a variable in void context at (eval 11) line 4, <SCHEMAFILE> line 6
or的错误Odd number of elements in anonymous hash at (eval 11) line 5, <SCHEMAFILE> line 6
。我不确定如何查找(eval 11)第 4-3 行,第 6 行。任何关于使用 Perl 调试器的建议或任何关于我可能出错的地方的建议都将不胜感激。
谢谢!
perl - Perl 长数据类型
我正在用 Perl 编写一个需要长数据类型而不是整数的应用程序。我怎样才能做到这一点。例如;
输出不是长整数,而是整数。
arrays - 如何扩展数组的哈希?
我不知道“扩展”是否是正确的词,但这是我想做的 =)
这个脚本
输出
我想要的是用成员替换数组中的组。即输出和$HoA
变为
也许“搜索和替换”并删除重复项会更好地解释我想要做什么?