perl 根据文件第一列删除重复的行且第三列不要

txt文件:abc232231abc232281apc282291处理后:abc232apc282以Tab键分隔... txt文件:
abc 232 231
abc 232 281
apc 282 291
处理后:
abc 232
apc 282以Tab键分隔
展开
 我来答
百度网友c9e795dda
2013-08-31 · TA获得超过5167个赞
知道大有可为答主
回答量:1128
采纳率:0%
帮助的人:1149万
展开全部
use strict;
my %seen;
open F, ">Output.txt" or die "Can't open output file";

while ( my $line = <DATA> ) {
my @data = split /\s+/, $line;
next if $seen{$data[0]};
print F "$data[0]\t$data[1]$/" ;
$seen{$data[0]}++
}
close F;

__DATA__
abc 232 231
abc 232 281
apc 282 291
追问
首先,谢谢
其次,我想要的是:
txt文件名:cust.txt
处理后的文件名:AfterCust.txt
另外,cust.txt文件第一行就是数据,没有行标示
追答
use strict;
my %seen;

open SRC, "cust.txt";
open F, ">AfterCust.txt" or die "Can't open output file";

while ( my $line = ) {
my @data = split /\s+/, $line;
next if $seen{$data[0]};
print F "$data[0]\t$data[1]$/" ;
$seen{$data[0]}++
}
close F;
close SRC;
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式