楼主: 
flu (Crazy Rhythm)   
2013-04-24 23:12:42※ 引述《hws110 (  only you   )》之铭言:
:           ABCDEFGHIJ
: V { All = 00009D0110; }           @A1=010
: V { All = 10009D0000; }           @A2=002
: V { All = 0209D00007; }           @A3=000
: .                                 @A4=009
: .                                 @A5=99D
: .                                 @A6=DD0
: for ($i=0; $i<10;$i++)
:         {
:                 for ($j=0; $j<3;$j++)
:                 {
:                         $all_patt2 = substr(@all_pat[$j],$i,1);
:                         print  "$all_pat2 ";    }
:                 print  "\n";            }
在上面的巢状for内
当 ($i, $j, $all_pat2) == ( 5, ??, 'DD0')的时候
如果用下面这段:
    #$i == 5 ;
    #$all_pat2 == 'DD0' ;
    # 也要让%hash已经先用my在循环外宣告为lexical scope
    $hash{"A".$i} = [ split(//, $all_pat2) ] ;
那么 @{ $hash{'A'.$i} } 就是你要的阵列
$hash{A5}->[0], $hash{A5}->[1], $hash{A5}->[2] 的值就是 'D', 'D', '0'
详情可以看看 perlreftut
或是google一下  hash of array, reference 之类的关键字
: 单纯在循环里打印,然后在循环外面打印换行符号
: 是可以印出我想要的结果,如下
: 010
: 002
: 000
: 009
: 99D
: DD0
: 但是我要怎么将目前每一横行的结果都丢到每一个独特的阵列里面?
: 而原始资料有数万行,代号也有近百个,
: 我要怎么样做才可以当代号有n个,就自动产生n个阵列来依序存值?
: 还望各位板友不吝解答,感谢~