我想使用 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; [...]
即输入是结构化文本记录,由-pairs 分隔[----<sequence number>----]
并包含<key>: <values>
-pairs,输出应该是每行包含一条记录的CSV。
我可以通过以下方式将<key>: <values>
-pairs 恢复为 CSV 格式
colonseperated = re.compile(' *(.+) *: *(.+) *')
fixedfields = re.compile('(\d{3} \w{7}) +(.*)')
- 但我无法识别结构化文本记录的开头和结尾以及重写为 CSV 行记录。此外,我希望能够区分不同类型的记录,即区分 - 比如说 -Version: 2
和Version: 3
记录类型。