- 论坛徽章:
- 0
|
本帖最后由 kk861123 于 2012-11-17 10:26 编辑
奇怪,怎么乱了,重新编辑下:
1. 同意Perlvim,还是将字符串全部吃入后再处理方便。
2. 方法确实很多
1)split
使用环视在split中不能分割成固定的字符串的,字符串为abcdef,分割的后的效果将是a,b,cdef.暂时没发现好的方法来split,请大家不吝赐教。
2)正则
需要加一句判断,否则如上面的字符串,@array中只有abcd,而ef就丢失了
@array = $str =~ /(.{4})/g;
push @array, $' if $';
# 不知道编辑的帖子乱了是不是这里导致的问题?
3)substr- my @array = ();
- for (my $i = 0; $i <= length($str); $i += 4) {
- push @array, substr($str,$i,4);
- }
复制代码 4)filehand
暂时觉得这个方法也比较方便- open my $fh, "<", \$str;
- my @array = do{ local $/=\4; <$fh> };
- close($fh);
复制代码 |
|