ahocorasick库 (匹配字符串 python)

安装:

pip install pyahocorasick -i https://pypi.tuna.tsinghua.edu.cn/simple/
import ahocorasick

drugs= '''
脑血康胶囊
羧甲司坦片
麻仁丸
氢溴酸东莨菪碱片
苄达赖氨酸滴眼液
pH4
化积口服液
五妙水仙膏
氨茶碱氯化钠注射液
伤科接骨片
六味壮骨颗粒
聚乙二醇滴眼液
复方氨酚烷胺胶囊
阑尾灵颗粒
小儿石蔻散
葡萄糖氯化钠注射液
肿节风注射液
神农镇痛膏
阿胶
二十五味珊瑚丸
小儿乳酸菌素片
罗汉果止咳糖浆
注射用氯化钾
盐酸哌甲酯缓释片
复方甘草酸苷片
维胺酯胶囊
藻酸双酯钠片
吉祥安坤丸
葫芦素片
中风回春胶囊
红金消结胶囊
鼻通宁滴剂
蒲地蓝消炎口服液
冠心生脉丸
盐酸乙胺丁醇片
伤科跌打丸
小儿智力糖浆
复方皂矾丸
氟康唑片
参芪降糖片
维生素C
注射用胸腺肽
硫辛酸注射液
癃闭舒胶囊
护肝宁片
利奈唑胺片
糠甾醇片
参南星口服液
注射用腺苷钴胺
红霉素软膏
黄体酮胶囊
鱼肝油乳
广东凉茶颗粒
来氟米特片
云芝肝泰颗粒
注射用鲑鱼降钙素
潞党参口服液
注射用盐酸尼莫司汀
三黄片'''
drugs_list = drugs.split("\n")
# 往actree中添加数据
actree = ahocorasick.Automaton()
for index, word in enumerate(drugs_list):
    actree.add_word(word, (index, word))
actree.make_automaton()

# 使用actree来查询目标语句中出现在actree中的关键词
temp = '感觉消化不好,服用了维生素C,并且还吃了三黄片,饭是吃了羊肉汤,大便有点色浅'
for i in actree.iter(temp):
    print(i)

运行结果:

(13, (41, '维生素C'))
# 第一个id是‘维生素C’在temp中的位置
# 第二个id是‘维生素C’在actree中的位置
(22, (59, '三黄片'))

ahocorasick的树结构主要用于构件关键词列表,然后进行匹配的。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值