非常感謝您的回答~
目前又遇到一個問題,在原始檔的*之中,
都會有一組數字如下的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***