[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
这个好像是chinaunix上的,有人问过,贴过来了(我忘了原帖在哪了,抱歉)
  1. my @matrix;
  2. my $max_len = 0;
  3. while(<DATA>){
  4.   chomp;
  5.    my @fields = split / /, $_;
  6.    my $len = @fields;
  7.   $max_len = $max_len > $len ? $max_len : $len;
  8.   push @matrix, [@fields];
  9. }
  10. for my $col (0..$max_len - 1){
  11.   for my $line (@matrix){
  12.     print $line->[$col]." "|| ' ';
  13.   }
  14.   print "\n";
  15. }
  16. __DATA__
  17. 1 2 3
  18. a b c
复制代码

TOP

如果处理的是中文呢?比如:
  1.      将进酒—李白
  2. 君不见,黄河之水天上来,奔流到海不复回。
  3. 君不见,高堂明镜悲白发,朝如青丝暮成雪。
  4. 人生得意须尽欢,莫使金樽空对月。
  5. 天生我材必有用,千金散尽还复来。
  6. 烹羊宰牛且为乐,会须一饮三百杯。
  7. 岑夫子,丹丘生,将进酒,杯莫停。
  8. 与君歌一曲,请君为我侧耳听:
  9. 钟鼓馔玉不足贵,但愿长醉不复醒。
  10. 古来圣贤皆寂寞,唯有饮者留其名。
  11. 陈王昔时宴平乐,斗酒十千恣欢谑。
  12. 主人何为言少钱,径须沽取对君酌。
  13. 五花马,千金裘,呼儿将出换美酒,
  14. 与尔同销万古愁。
复制代码

TOP

学习一下523066680版主的代码,哈哈
  1. use Encode;
  2. $n=0;
  3. $big=0;
  4. foreach (<DATA>) {
  5.          chomp;
  6.          $_=decode ("gb2312",$_);
  7.         @{$arr[$n]}=split(//,$_);
  8.         $big = $#{$arr[$n]} > $big ? $#{$arr[$n]} : $big;
  9.         $n++;
  10. }
  11. foreach $j (0..$big) {
  12.         foreach $i (reverse 0..$#arr) {
  13.                 printf("|%s", encode("gb2312",$arr[$i][$j])||'  ');
  14.         }
  15.         print "\n";
  16. }
  17. __DATA__
  18.           将进酒/李白
  19. 君不见,黄河之水天上来,奔流到海不复回。
  20. 君不见,高堂明镜悲白发,朝如青丝暮成雪。
  21. 人生得意须尽欢,莫使金樽空对月。
  22. 天生我材必有用,千金散尽还复来。
  23. 烹羊宰牛且为乐,会须一饮三百杯。
  24. 岑夫子,丹丘生,将进酒,杯莫停。
  25. 与君歌一曲,请君为我侧耳听:
  26. 钟鼓馔玉不足贵,但愿长醉不复醒。
  27. 古来圣贤皆寂寞,唯有饮者留其名。
  28. 陈王昔时宴平乐,斗酒十千恣欢谑。
  29. 主人何为言少钱,径须沽取对君酌。
  30. 五花马,千金裘,呼儿将出换美酒,
  31. 与尔同销万古愁。
复制代码
1

评分人数

TOP

20# DAIC


用reverse操作符啊

TOP

返回列表