问题的一小部分背景:我正在vb.net中开发一个NLP(自然语言处理)应用程序,我决定使用维基百科作为我的训练文本集。
我已将Wikipedia下载为XML文件,但我无法提取纯文本。我一直在尝试使用正则表达式从xml文件中获取段落的文本,但它似乎并没有很好地工作。我遇到的问题是当你查看一个wiki页面时(例如:Anarchism on Wiki),内部链接(到其他wiki文章)只是作为文本显示,但在xml文件中它们显示如下:[[自由联想(共产主义和无政府主义)|自由联想]]。我不想要方括号,因为这只是链接的格式,我不想要第二页ID(自由关联),因为这不是文本对读者的显示方式。还有我不想删除的样式问题(我很确定我可以用正则表达式来解决这个问题,我目前正在使用Dim expression As New Regex("/\<[a-z0-9\ ]+\>/")
。
要从xml文件中获取实际文本,我正在使用它:
Dim reader As XmlTextReader = New XmlTextReader("location of xml file")
Do While (reader.Read())
Select Case reader.NodeType
Case XmlNodeType.Text 'Display the text in each element.
'code goes here
End Select
Loop
我一直在寻找互联网寻求帮助,我找到了一些有用的文章,但到目前为止,我的代码仍然无效。任何帮助(甚至是有用的链接)都会很棒!
谢谢!