如何使用python3从wiki文章中删除引用?

时间:2017-04-18 07:56:33

标签: python python-3.x

以下是我的文章:

  

从公元前1世纪开始,与Virgil,Horace和Strabo,罗马   历史只对中国和丝绸生产提供了模糊的描述   Seres远东人,也许是古代人   中国。[2] [3]公元2世纪罗马历史学家弗洛鲁斯似乎有   让塞雷斯与印度人民混淆,或至少注意到他们的   皮肤肤色证明它们都生活在另一个天空之下#34;   比罗马人。[2]罗马作家似乎已经证明了这一点   关于Seres在哪里精确定位的一些混淆   中亚或东亚。[4]公元1世纪的地理学家Pomponius   梅拉断言,塞雷斯的土地形成了中心   东海的一个海岸,两侧是印度和南部的海洋   北面是欧亚草原的斯基泰人。[2]历史学家   Ammianus Marcellinus(约公元前330年 - 公元400年)写道,该国的土地   塞雷斯被一条叫做河流的巨大天然围墙包围着   Bautis,可能描述了黄河。[2]

这篇文章可以在我的文件中找到。我试图使用文件open方法提取列表中的文本。

with open('test.txt','r',encoding='utf-8', errors='ignore') as tit:
    for i in tit:
        lines.append(i.strip()) # extracting the text line by line without newline characters.

但是现在我得到的结果是带有线条和参考数字的维基文章。我不明白如何删除参考号码,因为它们在我的进一步过程中遇到了麻烦。

请告诉我如何实现这一目标?

1 个答案:

答案 0 :(得分:1)

您可以使用re.sub。像这样。

import re

lines = []
with open('test.txt','r',encoding='utf-8', errors='ignore') as tit:
    for i in tit:
        lines.append(re.sub('\[\d+\]', '', i.strip()))