在这样的文本文件中:
名字姓氏#
第二名
地址行 1
地址行 2
工作电话:
家庭电话:
状态:
名字姓氏#
....同上...
我需要匹配字符串 'Work Phone:' 然后向上两行插入字符 '|'在行的开头。所以伪代码是:
如果“工作电话:”在行中: 上两行: 写| + 线 写下其余的行。
文件大约 10 MB,大约有 1000 个这样的段落。 然后我需要将它写入另一个文件。所以期望的结果是:
名字姓氏#
第二名
|地址行1
地址行 2
工作电话:
家庭电话:
状态:
感谢您的帮助。
请您参考如下方法:
此解决方案不会将整个文件读入内存
p=""
q=""
for line in open("file"):
line=line.rstrip()
if "Work Phone" in line:
p="|"+p
if p: print p
p,q=q,line
print p
print q
输出
$ python test.py
First Name last name #
secone name
|Address Line 1
Address Line 2
Work Phone:
Home Phone:
Status:
