建设通网站有法律,wordpress mysql 配置文件,wordpress博客文章怎么设置,影视网站代理最大匹配法#xff1a;最大匹配是指以词典为依据#xff0c;取词典中最长单词为第一个次取字数量的扫描串#xff0c;在词典中进行扫描(为提升扫描效率#xff0c;还可以跟据字数多少设计多个字典#xff0c;然后根据字数分别从不同字典中进行扫描)。例如#xff1a;词典…最大匹配法最大匹配是指以词典为依据取词典中最长单词为第一个次取字数量的扫描串在词典中进行扫描(为提升扫描效率还可以跟据字数多少设计多个字典然后根据字数分别从不同字典中进行扫描)。例如词典中最长词为“中华人民共和国”共7个汉字则最大匹配起始字数为7个汉字。然后逐字递减在对应的词典中进行查找。下面以“我们在野生动物园玩”为例详细说明一下正向与逆向最大匹配方法1、正向最大匹配法正向即从前往后取词从7-1每次减一个字直到词典命中或剩下1个单字。第1次“我们在野生动物”扫描7字词典无第2次“我们在野生动”扫描6字词典无。。。。第6次“我们”扫描2字词典有扫描中止输出第1个词为“我们”去除第1个词后开始第2轮扫描即第2轮扫描第1次“在野生动物园玩”扫描7字词典无第2次“在野生动物园”扫描6字词典无。。。。第6次“在野”扫描2字词典有扫描中止输出第2个词为“在野”去除第2个词后开始第3轮扫描即第3轮扫描第1次“生动物园玩”扫描5字词典无第2次“生动物园”扫描4字词典无第3次“生动物”扫描3字词典无第4次“生动”扫描2字词典有扫描中止输出第3个词为“生动”第4轮扫描即第4轮扫描第1次“物园玩”扫描3字词典无第2次“物园”扫描2字词典无第3次“物”扫描1字词典无扫描中止输出第4个词为“物”非字典词数加1开始第5轮扫描即第5轮扫描第1次“园玩”扫描2字词典无第2次“园”扫描1字词典有扫描中止输出第5个词为“园”单字字典词数加1开始第6轮扫描即第6轮扫描第1次“玩”扫描1字字典词有扫描中止输出第6个词为“玩”单字字典词数加1整体扫描结束。正向最大匹配法最终切分结果为“我们/在野/生动/物/园/玩”2、python代码实现1 #-*- coding: utf-8 -*-2 3 Created on Thu Jul 19 08:57:56 201845 author: Lenovo6 78 test_file ‘train/train.txt‘#训练语料9 test_file2 ‘test/test.txt‘#测试语料10 test_file3 ‘test_sc/test_sc_zhengxiang.txt‘#生成结果1112 def get_dic(test_file): #读取文本返回列表13 with open(test_file,‘r‘,encoding‘utf-8‘,) as f:14 try:15 file_content f.read().split()16 finally:17 f.close()18 chars list(set(file_content))19 returnchars2021 dic get_dic(test_file)22 defreadfile(test_file2):23 max_length 52425 h open(test_file3,‘w‘,encoding‘utf-8‘,)26 with open(test_file2,‘r‘,encoding‘utf-8‘,) as f:27 lines f.readlines()2829 for line in lines:#分别对每行进行正向最大匹配处理30 max_length 531 my_list []32 len_hang len(line)33 while len_hang0 :34 tryWord line[0:max_length]35 while tryWord not indic:36 if len(tryWord)1:37 break38 tryWordtryWord[0:len(tryWord)-1]39 my_list.append(tryWord)40 line line[len(tryWord):]41 len_hang len(line)4243 for t in my_list:#将分词结果写入生成文件44 if t ‘\n‘:45 h.write(‘\n‘)46 else:47 h.write(t )4849 h.close()5051 readfile(test_file2)3、训练语料和测试语料见附件。