perl删除第一列相同的行

如我有以下文件AA56578HHHAA54575YGYBA65665TGY想用perl删除第一列相同的行,随意保留一行。如上文件只得到AA56578HHHBA65665T... 如我有以下文件
AA 565 78 HHH
AA 545 75 YGY
BA 656 65 TGY
想用perl删除第一列相同的行,随意保留一行。如上文件只得到
AA 565 78 HHH
BA 656 65 TGY
展开
 我来答
阳光上的桥
2018-04-11 · 知道合伙人软件行家
阳光上的桥
知道合伙人软件行家
采纳数:21424 获赞数:65794
网盘是个好东东,可以对话和传文件

向TA提问 私信TA
展开全部

这类文件处理的套路都是逐行读文件、判断条件是否写如新文件,控制是否写入就把第一个单词存起来,代码一般是这样:

open(F1,'1.txt');#原始文件
open(F2,'>2.txt');#新建文件
while($s=<F1>){
    ($k)=split(/\s+/,$s);
    print F2,$s if (! $KEYS{$k});#输出不存在的行
    $KEYS{$k}=1; #标记
}
close(F2);
close(F1);
#接下来根据需要删除文件F,更名F2为F1
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式