前向最大匹配分词FMM

xiaoxiao2021-02-28  90

def getSeg(text,lib_trie): if not text: return '' if len(text) == 1: return text if lib_trie.find(text): return text else: small = len(text) - 1 text = text[0:small] return getSeg(text,lib_trie) def FMM(str,lib_trie): # 正向最大匹配分词 result_str = '' result_len = 0 while str: tmp_str = str seg_str = getSeg(tmp_str,lib_trie) seg_len = len(seg_str) result_len = result_len + seg_len if seg_str.strip(): if (result_str): result_str = result_str + '/' + seg_str else: result_str = seg_str str = str[seg_len:] return result_str
转载请注明原文地址: https://www.6miu.com/read-21388.html

最新回复(0)