本文提供两种方法:
1.直接提取
2.通过上级词汇与下级词汇比较,得出正常词语。
比如“谢谢你”和“谢你”,“谢谢”,“谢谢”出现的评论比“谢你”高,所以前者是一个词语而后者不是
同样比如“乌托邦”是一个固定词汇,那么“乌托邦”出现的概率几乎等于“乌托”和“托邦”,这这两个都不是词语
如下是代码,写的有点乱
#-*-coding:utf8-*-
import re
import string
import sys
reload(sys)
sys.setdefaultencoding('gb2312')
def rate(l):
f = open(path, 'r')
line = f.readline()
requestL = l
dict = {}
i = 0
while line:
i = i + 1
# print i
line = f.readline()
l = line.decode('gbk')
if line == "":
break
try:
line = unicode(line)
line = re.sub("[\s+\.\!\/_,$%^*(+\"\']+|[+——!,。?、~@#¥%……&*():“”]+".decode('utf-8'), "".decode('utf-8'),
line)
line = line.decode('gbk')
except:
line = l
if line == '':
line = " "
# print line
bef = {}
if len(line) > requestL - 1: