Perl编程问题,怎样替换对应的数字或者字符串?我有两个文件1.txt和2.txt.在1.txt中,有2列,第一列是元素名字,第二列是它对应的数字,但是有几百行.格式如下:a(3)xvsd 1bfsoek 2arg 3tya 4.等等在2.txt中

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/04 00:35:40
Perl编程问题,怎样替换对应的数字或者字符串?我有两个文件1.txt和2.txt.在1.txt中,有2列,第一列是元素名字,第二列是它对应的数字,但是有几百行.格式如下:a(3)xvsd 1bfsoek 2arg 3tya 4.等等在2.txt中

Perl编程问题,怎样替换对应的数字或者字符串?我有两个文件1.txt和2.txt.在1.txt中,有2列,第一列是元素名字,第二列是它对应的数字,但是有几百行.格式如下:a(3)xvsd 1bfsoek 2arg 3tya 4.等等在2.txt中
Perl编程问题,怎样替换对应的数字或者字符串?
我有两个文件1.txt和2.txt.
在1.txt中,有2列,第一列是元素名字,第二列是它对应的数字,但是有几百行.格式如下:
a(3)xvsd 1
bfsoek 2
arg 3
tya 4.等等
在2.txt中也有几百行,每一行都是由1.txt中的元素组成的序列例如:
a(3)xvsd-arg-bfsoek
arg-tya-arg-bfsoek
.
我现在要把2.txt中的序列,用1.txt中元素相对应的数字来替换该怎么做?
例如 1-3-2
3-4-3-2

Perl编程问题,怎样替换对应的数字或者字符串?我有两个文件1.txt和2.txt.在1.txt中,有2列,第一列是元素名字,第二列是它对应的数字,但是有几百行.格式如下:a(3)xvsd 1bfsoek 2arg 3tya 4.等等在2.txt中
my %data;
open f1,"1.txt" or die "Can't open F1";
while ( chomp ( my $line = ) ) {
$line s/\s+(\d+)$//;
$data{$line} = $1;
}
close f1;
open f2,"2.txt" or die "Can't open F2";
while ( chomp ( my $line = ) ) {
my @temp = split /-/,$line;
my $tempLine;
$tempLine .= $data{$_} ."-" foreach ( @temp );
chop $tempLine;
print $tempLine .$/;
}
close f2;