我需要解析一个文本文件,其中包含数百条记录,每条记录超过 1 行。我是 Python 新手,一直在尝试用 grep 和 awk 以几种复杂的方式做到这一点,但还没有运气。该文件包含如下所示的记录:
409547095517 911033 00:47:41 C44 00:47:46 D44 00:47:53 00:47:55 (555) 555-1212 00:47 10/31 100 Main Street - NW
Some_City TX 323 WRLS METRO PCS
P# 122 -5217 ALT# 555-555-1212 LEC:MPCSI WIRELESS CALL QUERY CALLER FOR LOCATION QUERY CALLER FOR PHONE #*
如果我可以将这些多行记录压缩为每条记录 1 行,我真的可以做所有我需要做的事情。每条记录将始终以“40”开头,或者我可以让 9110 指示开始,因为这些将始终存在并且是唯一的,前提是 40 位于行首。我使用了十六进制编辑器,发现我可以删除所有换行符(十六进制 0D0A),但这并不比手动编辑文件更好,而且我不需要删除每条记录的最后一个。有些记录将只有 2 行,但大多数将是 5 行,就像这样。
有没有办法python或其他方式将构成记录的行连接成一行,其中 40 或更好的选择,其中 9110 表示记录的开始?
任何想法或指示将不胜感激。我有 python 和一个好的 IDE,我很擅长 grep 和 find 但学习 awk(别笑)......