我最近遇到了Standard Generalized Markup Language。我已经从EMILLE/CIIL Corpus获得了SGML格式的语料库。这是该文集的文档:我想只提取存在于文件中的文本如何使用Python去除文本文件中的SGML标签?
。来自文档的语料库的编码和标记信息是:
文本被编码为双字节Unicode文本。有关Unicode的更多信息。 使用1级CES兼容标记在SGML中标记文本。每个文件还包括一个完整的标题,它指定了文本的出处。
我很难剥离这些标签。我尝试了'正则表达式'以及'美丽的汤',但它不起作用。这是示例文本文件。我想保留的语言是旁遮普语。
这是XML和有多个XML解析器在那里,你可以使用。在python中,我最喜欢'lxml' - 它是'libxml'库的前端,并且效率很高。 'ElementTree'是一个纯Python实现。甚至不要尝试使用正则表达式,对于XML来说它非常困难。 – tdelaney
另一种选择是使用XSLT。假设你想要的文字,但你也想打破'
...
'边界的段落。这可以用XSLT紧凑地表示(如果有点隐藏的话)。 – tdelaney谢谢@tdelaney。我要用lxml。完成后我会通知你。 – ssokhey