一尘不染

Python-如何将文本分成句子?

python

我有一个文本文件。我需要得到一个句子清单。

如何实现呢?有很多细微之处,例如缩写中使用了点。

我的旧正则表达式效果很差:

re.compile('(\. |^|!|\?)([A-Z][^;↑\.<>@\^&/\[\]]*(\.|!|\?) )',re.M)

阅读 1733

收藏
2020-02-17

共1个答案

一尘不染

自然语言工具包(nltk.org)满足你的需求。 该群组发布表明这样做:

import nltk.data

tokenizer = nltk.data.load('tokenizers/punkt/english.pickle')
fp = open("test.txt")
data = fp.read()
print '\n-----\n'.join(tokenizer.tokenize(data))

(我还没有尝试过!)

2020-02-17