- 论坛徽章:
- 0
|
设计的意图就是把从son文件中读出的内容和dad文件做比较,如果在dad文件中找到匹配的项目,就print出来。
代码如下:
use warnings;
use IO;
$dadfile=shift;
$sonfile=shift;
open (DADFILE,$dadfile) or die "cannot open $dadfile, due to: $!";
open (SONFILE,$sonfile) or die "cannot open $sonfile, due to: $!";
while (<SONFILE> {
$sontemp=$_;
while (<DADFILE> {
$dadtemp=$_;
if ($dadtemp =~ /\Q$sontemp/) {
print "\$dadtemp is $dadtemp\n";
print "\$sontemp is $sontemp\n";
}
}
close(DADFILE);
open (DADFILE,$mofile) or die "cannot open $mofile, due to: $!";
}
close (MOFILE);
close (USERSFILE);
现在的问题是这样的。
如果匹配项目是 纯数字 oK 没有问题,可以得到正确结果。
但是如果匹配项目是字符串,例如这样的 lhXmH4DgN5k
euamSNPyhjj
qtNM*B1WYaj
那么只会匹配sonfile中的最后一行qtNM*B1WYaj。
那位高手知道为什么?
为什么只匹配最后一行? |
|