新手来了 如果我缺少详细信息,请致歉。
在 perl 5 中
我有一个看起来像这样的文件
precedence = 2
new york
new jersey
florida
precedence = 3
kings
essex
dade
precedence = 1
brooklyn
newark
miami
我可以毫无问题地遍历文件并创建一个保存优先级值的 $var 和一个保存行直到下一个“部分”(precedence = x)的数组(@tmp)
我需要按照偏好的顺序最终将所有部分推入最终数组
所以
print @final;
结果是
brooklyn
.....
new york
.....
kings
.....
注意:我从来不知道会有多少部分或每个部分有多少行
我想也许可以做一个哈希哈希并将每个数组放在 HoH
push @{ $hash{"section_2"} }, @tmp ;
但我不知道
a)如果每次我加载一个部分时重用@tmp数组会出现问题(在每个循环开始时将其消隐之后)
b)我不知道如何在键“section_2”中获取数组中的所有值并将它们推送到@final
当然可能有更好的方法。