首页 > 数据库技术 > 详细

模式匹配迅速入手——ahocorasick第三方数据库的使用

时间:2020-11-28 21:13:45      阅读:46      评论:0      收藏:0      [点我收藏+]

模式匹配主要的功能类似于我之前根据词性进行摘取单词一样,就是通过字典去摘取这些单词

技术分享图片

 

 

 类似于这样的效果

代码:

 1 # # -*- coding:utf-8 -*-
 2 # @Time : 2020/11/28 20:24 
 3 # @Author : 周博
 4 # @File : test_3.py 
 5 # @博客园: https://www.cnblogs.com/smartisn/
 6 
 7 #coding:utf-8
 8 import ahocorasick
 9 
10 def make_AC(AC, word_set):
11     for word in word_set:
12         print(word)
13         AC.add_word(word,word)
14     return AC
15 
16 def test_ahocorasick():
17     ‘‘‘
18     ahocosick:自动机的意思
19     可实现自动批量匹配字符串的作用,即可一次返回该条字符串中命中的所有关键词
20     ‘‘‘
21     key_list = ["苹果", "香蕉", "", "橙子", "柚子", "火龙果", "柿子", "猕猴挑"]
22     AC_KEY = ahocorasick.Automaton()
23     AC_KEY = make_AC(AC_KEY, set(key_list))
24     AC_KEY.make_automaton()
25     test_str_list = ["我最喜欢吃的水果有:苹果、梨和香蕉", "我也喜欢吃香蕉,但是我不喜欢吃梨"]
26     for content in test_str_list:
27         name_list = set()
28         for item in AC_KEY.iter(content):#将AC_KEY中的每一项与content内容作对比,若匹配则返回
29             name_list.add(item[1])
30         name_list = list(name_list)
31         if len(name_list) > 0:
32             print(content, "--->命中的关键词有:", "\t".join(name_list))
33 if __name__ == "__main__":
34     test_ahocorasick()

来源: python ahocorasick介绍_u010569893的博客-CSDN博客

模式匹配迅速入手——ahocorasick第三方数据库的使用

原文:https://www.cnblogs.com/smartisn/p/14053945.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!