我有文本格式的数据文件,其中有几行。现在有些行有错误的数据,我需要用那些有正确数据的行来更新。例如,
Col1 Col2 Col3 Col4 .......
A1?% A foo fooo .......
B€(2 B .................
C&6 Z .................
A?04 Y .................
B++3 Q .................
C!5 C .................
D*9 D .................
实际数据不同,但这是它的简化版本。如您所见,有某些 Col1,其中 A1 是 A,但 A4 是 Y,依此类推。其余列 Col3、Col4 ... 取决于 Col2。因此,当 Col1 中有 A(A1、A2、A3 等)时,我需要检查 Col2 是否为 A。如果不是,我必须根据 A 所在的行更新 Col2、Col3 ....
如何在 Perl 中实现这一点。我知道这种操作可以在带有更新语句的数据库中完成,但我在这里没有那么奢侈,必须以编程方式完成。
编辑:文件是制表符分隔的,数据是可以包含任何字母数字或 ascii 字符的字符串。