我有一個數據集,其中包含與這些UA對應的用戶代理和設備列表。還有另一個數據集與用戶代理一起有其他數據。我需要一種方法來識別數據中的設備。在Perl中映射兩個數據集
因此,我必須在兩個文件中映射UA,然後從具有該列表的文件中獲取相應的設備信息。我已經得到了第一個文件中的哈希列表,並將其與數據文件中的UA進行匹配。如何從第一個具有設備信息的文件中再次獲取相應信息並將其寫入文件?
#!/usr/bin/perl
use warnings;
use strict;
our $inputfile = $ARGV[0];
our $outputfile = "$inputfile" . '.devidx';
our $devid_file = "devid_master"; # the file that has the UA and the corresponding device info
our %ua_list_hash =();
# Create a list of mobile user agents in the devid_master file
open DEVID, "$devid_file" or die "can't open $devid_file";
while(<DEVID>) {
chomp;
my @devidfile = split /\t/;
$ua_list_hash{$devidfile[1]} = 0;
}
open IN,"$inputfile" or die "can't open $inputfile";
while(<IN>) {
chomp;
my @hhfile = split /\t/;
if(exists $ua_list_hash{$hhfile[24]}) {
# how do I get the rest of the columns from the devidfile, columns 2...10?
}
}
close IN;
還是有更好的方法來做到這一點是Perl?這總是歡迎:)。
yup that works :),那就是不熟悉Perl的問題。謝謝 ! – sfactor 2011-02-04 14:46:46