区文件1中的一行,和文件2中所有的数据进行比较,有相同的保存起来,否则删除。
#!/usr/bin/perl #use strict; open(FILE1,"C:/Perl/BX/BX-Users.txt"); open(FILE2,"C:/Perl/BX/BX-Book-Ratings.txt"); open(result1,">C:/perl/BX/BX-Users_result.txt"); my $i=0; my $j=0; while((my $bxUser=<FILE1>)&&($i<10)) { my $userId=substr($bxUser,0,index($bxUser,",")); while(my $rankUser=<FILE2>) { my $userIdCmp=substr($rankUser,0,index($rankUser,",")); if(($userId==$userIdCmp)&&($j==0)) { syswrite(result1,"$bxUser"); $j++; } } $j=0; $i++; } close(FILE1); close(FILE2); close(result1);