tokenltk word_tokenize()在不同的函数中以两种不同的方式标记相同的单词

时间:2017-12-06 10:41:44

标签: python encoding utf-8 tokenize python-unicode

我有一个网球运动员的名字,显然没有被熊猫正确解析。这是“radwa?ska”。我有两个函数,我使用word_tokenize()函数进行标记。 它在两个不同的函数中以两种不同的方式对句子进行标记。我如何让第二个走第一条路 ['radwa?ska']
['radwa','?','ska']
这是两个函数中的代码 第一个功能:
word_tokenize(keyword)关键字为'martina hingis, nadia petrova, agnieszka radwa?ska'
在第二个功能是:
word_tokenize(content[j])其中内容[j]为'agnieszka radwa?ska'

1 个答案:

答案 0 :(得分:1)

对于原始帖子中的两个句子,他们应该返回相同的输出:

TreebankWordTokenizer

这是因为word_tokenize后面的radwa?ska对象总是在https://github.com/nltk/nltk/blob/develop/nltk/tokenize/treebank.py#L80处的问号前后放置一个空格

有人可以通过某些方法来禁用该正则表达式,但它会在其他地方引发问题。

但是我建议你仔细看看你是如何阅读/收集你的数据的,radwańska显示暗示在标记化之前存在上游的某些编码问题这一事实。正确读取文件/流将使您 Microsoft.Win32.OpenFileDialog dlg = new Microsoft.Win32.OpenFileDialog(); dlg.Filter = "tiproj files (*.tiproj)|*.tiproj";

另见