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

perl 合并多个文件一例

发布时间:2020-12-15 20:58:05 所属栏目:大数据 来源:网络整理
导读:? 这个问题是cu上有人提出的,感觉具有代表性,特地记录一下 比如a 文件 内容如下 a=11??b=http://www.baidu.com/baicd? ?c=xxx/baidu.apk a=12??b=http://www.sina.com/xxx??c=xxx/sina.apk a=13??b=http://www.qq.com/sdfsd??c=xxx/qq.akc b 文件内容如下?

?

这个问题是cu上有人提出的,感觉具有代表性,特地记录一下

比如a 文件 内容如下
a=11??b=http://www.baidu.com/baicd? ?c=xxx/baidu.apk
a=12??b=http://www.sina.com/xxx??c=xxx/sina.apk
a=13??b=http://www.qq.com/sdfsd??c=xxx/qq.akc
b 文件内容如下?
www.baidu.com,111
www.sina.com,112
c 文件内容如下
baidu.apk,123
sina.apk,12223
结果
11,http://www.baidu.com/baicd? ?,111,123
12,http://www.sina.com/xxx??,112,12223
13,http://www.qq.com/sdfsd??,qq.akc,

?

 
 
  1. use?strict;?
  2. use?warnings;?
  3. use?Data::Dumper;?
  4. my?(%hash1,%hash2);?
  5. ???open?FC,"c.txt"?or?die?"$!";?
  6. ????while(<FC>){?
  7. ??????chomp;???????????????????#把C文件映射为HASH表,用于替换?
  8. ????????/(S+),(S+)/;?
  9. ???????$hash2{$1}=$2;?
  10. }?
  11. ????close?FC;?
  12. open?FA,"a.txt"?or?die?"$!";?
  13. while(<FA>){?
  14. ????my($num,$url,$domain,$apk1);?
  15. ????s/a=(d+)s+w+=(http://([^/]+)/S+)s+[^/]+/(S+)/?
  16. ????($num,$apk1)=?($1,$2,$3,$4);?
  17. ????/xeg;?
  18. ????$apk1?=~?s/($apk1)/$hash2{$1}??$hash2{$1}:"$1"/eg;?
  19. ???push?@{$hash1{$domain}},$num,$apk1;?
  20. }?
  21. open?FB,"b.txt"?or?die?"$!";?
  22. ?while(<FB>){?
  23. ????chomp;?
  24. ????/(S+),(S+)(?{push?@{$hash1{$1}},$2})/;?
  25. ?}?
  26. ?close?FB;?
  27. for?(sort?keys%hash1){?
  28. ????my?@arr;?
  29. ????unless(defined$hash1{$_}[3]){?
  30. ???????push??@arr?,$hash1{$_}[0],$hash1{$_}[1],$hash1{$_}[2],",",;??
  31. ????}else{?
  32. ????push?@arr?,$hash1{$_}[3],$hash1{$_}[2];?
  33. ????}?
  34. ????print?join(",@arr)."n";?
  35. }?
  36. output
    • 11,http://www.baidu.com/baicd,123
    • 13,http://www.qq.com/sdfsd,
    • 12,http://www.sina.com/xxx,12223

(编辑:李大同)

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

    推荐文章
      热点阅读