请问用perl如何处理这种特殊格式的文档

请问用perl如何处理这种特殊格式的文档



[Copy to clipboard] [ - ]
CODE:
v1  v2  v3  v4  v5
  v6   v7    v8
1   2   3    4      5
  6     7    8

1.1 2   3.2  11   6
  s     f     9

3    4    6    9     4
  0    2     6
......
......

文档的格式如上所示,有变量V1至V8,分别有对应值,本意是V1-V8在一行内显示,对应的值也要在一行内显示,可是 现在除了完整的行被回车分成两行外,每行之间还被多插了个回车,导致上面的情况。假设有10000行。

如何做到显示正确的格式?如下:

[Copy to clipboard] [ - ]
CODE:
v1  v2  v3  v4  v5  v6   v7    v8
1    2   3     4    5  6     7    8
1.1 2   3.2  11   6  s     f    9
3    4   6     9    4  0     2    6
......
......

谢谢大家!

两个方法:

1, 把开头以空格的全部移到上一行,可以用re
2,就是每读出八个写一行
把奇数行的回车去掉不就行了?
落叶季节,思念季节
while(<DATA>){
    chomp;
    print;
    /\S/ and print scalar <DATA>;
}

参见楼上楼下,

perl -l0ne 'print; /\S/ and print scalar <>' /path/to/your/file
我觉得还是尽量不要滥用正则表达式比较好。
难道你没有用re?


QUOTE:
原帖由 forlorngenius 于 2008-9-25 10:59 发表
难道你没有用re?

小喷油,用和滥用是两码事。学着点儿。
切,你个大喷油, 悠着点