我有一个文本文件:
“Accounting Principles. Negative Pledge Clauses . Clauses Restricting
Subsidiary Distributions . Lines of Business……Accounting
Principles: is defined in the definition of IFRS. Administrative
Agent: SVB……In the event that any Accounting Principles (as
defined below) shall occur and such change results……”
在此文件中,“会计原则”出现三次,“IFRS”出现一次.
我尝试在每个“会计原则”和“IFRS”之后提取3000个字符(或300个单词).现在我只能在第一次出现“会计原则”后提取字符,并为“会计原则”和“IFRS”编写单独的代码.所以我的问题是如何在每次出现“会计原则”后提取3000个字符,以及如何编写一个我可以处理“会计原则”和“IFRS”的代码,而不是使用两个单独的代码?
非常感谢!
我的代码如下:
import os
sourcepath=os.listdir('try/')
for filename in sourcepath:
inputfile='try/'+filename
with open(inputfile, 'r') as f:
text=f.read()
index=text.index('Accounting Principles')
right=text[index: index+3000]
print(right)
import os
sourcepath=os.listdir('try/')
for filename in sourcepath:
inputfile='try/'+filename
with open(inputfile, 'r') as f:
text=f.read()
index=text.index('IFRS')
right=text[index: index+3000]
print(right)
最佳答案 该程序查找“会计原则”或“IFRS”的每个实例,并打印匹配的字符串以及超出其结尾的30个字符.
import re
with open('x.in') as fp:
text = fp.read()
for m in re.finditer("Accounting Principles|IFRS", text):
print(text[m.start():m.end()+30])