python - 如何使用 NLTK 分词器去除标点符号?

标签 python nlp tokenize nltk

我刚开始使用 NLTK,我不太明白如何从文本中获取单词列表。如果我使用 nltk.word_tokenize(),我会得到一个单词和标点符号列表。我只需要单词。我怎样才能摆脱标点符号? word_tokenize 也不适用于多个句子:在最后一个单词中添加点。

最佳答案

查看 nltk 提供的其他标记化选项 here .例如,您可以定义一个分词器,它挑选出字母数字字符序列作为 token 并丢弃其他所有内容:

from nltk.tokenize import RegexpTokenizer

tokenizer = RegexpTokenizer(r'\w+')
tokenizer.tokenize('Eighty-seven miles to go, yet.  Onward!')

输出:

['Eighty', 'seven', 'miles', 'to', 'go', 'yet', 'Onward']

关于python - 如何使用 NLTK 分词器去除标点符号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15547409/

相关文章:

java - StreamTokenizer 在遇到斜杠时停止

c - 如何在 sscanf() 中使用 RegEx 以特定方式在 c 中标记字符串?

python - 创建 Hangman 游戏时,将整数列表转换为与另一个列表中的位置兼容的内容

python - 进行滚动线性回归的有效方法

algorithm - 评估语言识别方法

python - 如何通过命令行下载节的模型?

algorithm - Levenshtein Automata 和 Damerau-Levenshtein 距离算法有什么区别?

python - 如何在 mayavi 动画中捕捉键盘事件

python - Selenium 在 alpine 3.6 容器上运行

python - 创建列表词法分析器/解析器