正向匹配分词

2018-10-09  本文已影响0人  龙小江i
# 定义分词的判断条件
def getSeg(text,wd_dict):
    if not text:
        return ''
    if len(text)==1:
        return text
    if text in wd_dict:
        return text
    else:
        new_length=len(text)-1
        text=text[0:new_length]
        res=getSeg(text,wd_dict)
        return res
# 定义最大正向匹配
def main (text_str,n_len,dict_name):
    text_str=text_str.strip()#去除字符串前后空格
    max_len=n_len#定义最大匹配分词长度
    result_str=''#保存要输出的结果
    while text_str:
        new_text=text_str[0:max_len]
        seg_str=getSeg(new_text,dict_name)
        result_str=result_str+seg_str+'/'
        seg_len=len(seg_str)
        text_str=text_str[seg_len:]
    return result_str
    print('分词结束')
word_dict=['一个','吃饭']
string='我一个人吃饭'
main(string,5,word_dict)
上一篇下一篇

猜你喜欢

热点阅读