作者yalent ( 心只有你 )
看板Perl
标题Re: [问题] 取值
时间Sun Apr 13 11:46:07 2014
非常感谢您的回答~
目前又遇到一个问题,在原始档的*之中,
都会有一组数字如下的1,2,3等
ID2*
1,2,4*
2,3,4*
ID3**
2*
ID4***
但是我想将第一组数字
1转成 A1,
2转成 A2,
4转成 A4
至於第二组数字的
2 转成B2,
3转成 B3,
4转成 B4
之後再对内容作排序
想将内容转为
ID2 A1
ID2 A2
ID2 B2
ID2 B3
ID2 A4
ID2 B4
ID3 B2
ID4
那这部份取代的写法,我要怎麽写呢?
※ 引述《AntaresStar ()》之铭言:
: 虽然好像是以*为分隔 但切开後又要排序
: 那不如连逗点也一起拿来切了
: 这样如何
: #!/usr/bin/perl
: while (<DATA>) {
: my @a = grep {/\S/} split /[,*]/;
: my $b = shift @a;
: @a ? map {print "$b $_\n"} sort @a : print "$b\n";
: }
: __DATA__
: ID2*1,2,4*2,3,4*
: ID3**2*
: ID4***
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.45.151.182
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/Perl/M.1397360770.A.05E.html