
如图,TXT文件里的每段内容都是以PT P开始,ER结束,怎样提取每段内容里PN,TI,AU 后的数据
我的想法是:每次读取一行,使用正则表达式匹配PN、TI所在的行(PN、TI后面的数据都在一行上),之后使用字符串切片提取后面的内容。
至于提取AU后面的数据,则使用正则表达式匹配AU至ER的内容,再使用切片提取。
text = open(r'C:\1.txt').read()
r=re.findall('PT P\nPN ([\S\s]*?)\nTI ([\S\s]*?)\nAU ([\S\s]*?)ER',text)
print(r)