Aşağıdaki dosya verildi:Perl hash dosyasına nasıl dosya yüklerim?
department=value1
location=valueA
location=valueB
department=value2
Dosyayı bir Perl hash dosyasına yüklemek için aşağıdakileri kullanıyorum:
use File::Slurp;
use Data::Dumper;
my %hash = map {
s/#.*//;
s/^\s+//;
s/\s+$//;
m/(.*?)\s*=\s*(.*)/;
} read_file($file);
print Dumper(\%hash);
Sonuç, ancak şu şekildedir:
$VAR1 = {
'location' => 'valueB',
'department' => 'value2'
};
Yukarıdaki dosyayı xhx50
$VAR1 = {
'location' => 'valueA,valueB',
'department' => 'value1,value2'
};
ile bir hashta yükleyebilirim.
teşekkür:
Ve veri yapısı öylesine benziyor. Sadece takılı chomp ($ val). ÇALIŞIYOR bir cazibe gibi. :) –
Windows üzerinde Perl 5.12.1 ile test ettiğimde, değerlerin her zaman bir önceki virgülü var .... Son ifadeyi tam bir koşullu olarak değiştirmem gerekiyor. –