Python中文文本分句 sentence tokenize

由于nltk等都没有实现句子级别的tokenize,或者文本分句。这里使用python正则,快速实现一个,可以把文本分成若干个小句子。

代码如下,如果你想要实现自己个性化的分句,例如只考虑“。!”等的分句,可以调整正则项,“|”代表或的意思。

def sent_tokenize(x):
    sents_temp = re.split('(:|:|,|,|。|!|\!|\.|?|\?)', x)
    sents = []
    for i in range(len(sents_temp)//2):
        sent = sents_temp[2*i] + sents_temp[2*i+1]
        sents.append(sent)
    return sents
x:'这个配置和价位真的很合适,完全够用,而且小黑的质量非常不错。'
sents:['这个配置和价位真的很合适,', '完全够用,', '而且小黑的质量非常不错。']

你可能感兴趣的:(Python,NLP)