加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

一文本处理问题

发布时间:2020-12-16 00:38:09 所属栏目:大数据 来源:网络整理
导读:最近一直在学习PERL的文本处理,今天在CU上遇到一个问题,练习了一下,结果没搞定... while(DATA){ ??? if($.==1){ ??? ??? chomp; ??? ??? %tab=(); ??? ??? @b=map{((++$tab{$_}) ==2)?($_.$tab{$_}):($_)} split(/s+/,$_); ??? ??? print "@bn"; ??? }e

最近一直在学习PERL的文本处理,今天在CU上遇到一个问题,练习了一下,结果没搞定...

while(<DATA>){
??? if($.==1){
??? ??? chomp;
??? ??? %tab=();
??? ??? @b=map{((++$tab{$_}) ==2)?($_.$tab{$_}):($_)} split(/s+/,$_);
??? ??? print "@bn";
??? }else{
??? ??? s/"(.*?)"/1/g;
??? ??? print;
??? }
}
__DATA__
Column1??? Column2??? Column3??? Column4 Column3 Colum5
Data??? Data??? "Data"??? Data??? "Data"??? Data

?

要求把第一行的重复的列在后面加上字符串2

把第其他行的引号去掉,以上是我写的大概的方法,我只想学习下而已,有很多的地方存在不足,特记录下。

@b=map{($tab{$_}++)?($_.$tab{$_}):($_)} split(/s+/,$_);

以上是纠结我很久的一个地方,最后发贴才明白过来,很惭愧。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读