我有一个文本文件;
...在上面的表5中,我们了解了压力之间的关系 和数量。它说...现在我们知道了...。表9:代表 x和y的图形。表6全部涉及力及其对力的影响 对象...
现在,我已经编写了一个代码来提取其中包含单词表的行;
with open file( <pathname + filename.txt>, 'r+') as f:
k = f.readlines()
for line in k:
if ' Table ' in line:
print(line)
现在我希望以特定格式打印输出;
(txt文件名),(表id),(表内容)
我通过使用python的 .split方法来做到这一点;
x = 'Paper ID:' + filename.split('.')[0] + '|' + 'Table ID:' + line.split(':')[0] + '|' + 'Table Content:' + line.split(':')[1] + '|'
现在,如您所见,我可以将表id和表内容分开,其中some后面有一个定界符(:)。 在没有分隔符的地方(即这些行),我该怎么做;
在表5中,我们了解了压力之间的关系 和数量。它说...现在我们知道了.. 要么 在表7中,我们看到了......
?
有人可以帮忙吗?
答案 0 :(得分:1)
您可以搜索模式Table <number>
,然后在该位置拆分。
您可以使用re.split(pattern, string, maxsplit=0, flags=0)
或re.findall(pattern, string, flags=0)
re.split('Table [0-9]', line)[-1]
将为您提供以下内容(内容)。
re.findall('Table [0-9]', line)
将为您提供带有ID的表格,您可以从中提取表格。
关于re.split和re.findall的Python文档