我想使用Python将普通结构化文本文件转换为CSV格式。Python:将结构化文本解析为CSV格式
输入看起来像这样
[-------- 1 -------]
Version: 2
Stream: 5
Account: A
[...]
[------- 2 --------]
Version: 3
Stream: 6
Account: B
[...]
输出应该是这个样子:
Version; Stream; Account; [...]
2; 5; A; [...]
3; 6; B; [...]
即输入是由[----<sequence number>----]
划分的结构化文本记录,其中包含<key>: <values>
-对,输出应该是CSV,每行包含一条记录。
我能够通过
colonseperated = re.compile(' *(.+) *: *(.+) *')
fixedfields = re.compile('(\d{3} \w{7}) +(.*)')
以检索的<key>: <values>
-pairs成CSV格式 - 但我的结构化文本记录故障识别开始和结束与重新书写为CSV线 - 记录。此外,我希望能够分离不同类型的记录,即区分 - 例如 - Version: 2
和Version: 3
记录类型。
您输入的文件不是* CSV格式;它是结构化的,但不是分隔符分隔的。您的输出*是*。 –
你对不同版本的记录有何期待? –
不同类型的记录具有不同数量的元素。 –