我試圖從哈希文件中檢查單詞的存在性,並且如果是,則顯示相應的哈希鍵和值。Perl將數組內容與哈希值進行比較
到目前爲止,我已經可以通過這個數組來完成這個值,這個值在腳本中給出。
我無法找到一種方法來從外部文件(此處爲FILEDEUX
)將這些數組的值賦予這些數組。 你能指點我正確的方向嗎?
(請不要猶豫,糾正我解釋我的問題的方式。)
#!/usr/bin/perl
use v5.10;
use strict;
use warnings;
my $hashtable = $ARGV[0];
my $textecompare = $ARGV[1];
open FILE,"<$hashtable" or die "Could not open $hashtable: $!\n";
open FILEDEUX,"<$textecompare" or die "Could not open $textecompare: $!\n";
while (my $line = <FILE>)
{
chomp($line);
my %elements = split(" ",$line);
my @motcherches = qw/blop blup blip blap/;
foreach my $motcherches (@motcherches) {
while ((my $key, my $value) = each (%elements)) {
# Check if element is in hash :
say "$key , $value" if (exists $elements{$motcherches}) ;
}
}
}
close FILE;
close FILEDEUX;
編輯:例輸入
FILE
(轉化成%elements
哈希)
Zieler player
Chilwell player
Ulloa player
Mahrez player
Ranieri coach
= ================================================== =========================
FILEDEUX
(轉化成motcherches
陣列)
之一,保存很快接踵而至,這一次Zieler必須是清晰一點,以保持它。 雖然萊切斯特的邊鋒很容易就放棄了,但伊扎格雷給了馬赫雷斯一個嘗試,他擊敗了他的左翼,儘管萊斯特邊鋒放棄了。克勞迪奧拉涅利將會很滿意他迄今在他身邊所看到的。
============================================== ===============================
預期輸出:
Zieler player
Mahrez player
Ranieri coach
'使用warnings'類似於'-w'你的家當線。你只需要其中的一個(並且大多數人會使用「使用警告」)。 –
錯過了,謝謝! – Azaghal