作者salagadoola (南瓜)
看板perl
标题Re: [问题] 抓字元至一维阵列或二维阵列!?
时间Wed Aug 8 15:08:27 2007
※ 引述《pttask (批踢踢.问.XD)》之铭言:
: 不好意思,可能是我观念及想法有问题,还请前辈指导我
: ========================
: 假若我有一个同一个资料夹下有一个123.txt
: 其123.txt的内容如下
: acg
: bdh
: ei
: f
: ========================
: 而小弟前段大概是这样想的
: use strict;
: open TRY1,"<123.txt";
: my ($try,@array);
: while(<TRY1>)
<TRY1> 每次只会读一行进来,所以 while 的内容会跑四次,
照原本的写法最後 @array 会只有最後一行的内容。
: {
: $try=$_;
: $try=~ s/\n//g;
: #以上代表读到换行将换行字元去除期望成为acgbdh ei f
: @array=split(//,$try);
想存成一维阵列的话,这行改成 push @array, split(//,$try);。
想存成二维阵列的话,这行改成 push @array, [ split(//,$try) ];。
: #将每个字猜成字元,以达到我想要$array[0]=a...$array[6]=空白字元...以此类推
: }
: 在於这个部份我的想法是否是有误的呢?
: 假若可以单读将字元一个一个丢到阵列之中的话
: 後段的部份用两个双回圈应当可以产生以下结果
对,其实用双层回圈就能产生下面的结果,
我上一篇写的那段好像很复杂的转换程式请当作没看到……。
(最近迷上那个模组,结果不管做什麽都想用那个模组来做……)
## 假设 @array 已经是二维阵列了
my @array2;
for ( my $i = 0; $i < @array; $i++ ) {
for ( my $j = 0; $j < @{$array[$i]}; $j++ ) {
$array2[$j][$i] = $array[$i][$j];
}
}
@array = @array2;
: =================
: ab
: cdef
: ghi
: =================
: 真的很不好意思我是程式初学者就问大家一些简易的问题,I'M SO SORRY! Orz
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.113.23.102
1F:推 pttask:感恩:~) 不过我用一维读取还是会多次重覆 我再努力看看 THX 08/08 16:49