python 词库 匹配_python从一段文本中找出存在于词库的词语

python从一段文本中找出存在于词库的词语

有现成的库吗?

可能不是最佳答案,只是提供一个思路。

个人觉得这个问题并不需要什么库,先把词库载入,弄成列表什么的。然后再把你需要匹配的文本读入,反过来想,文本存在词库的词,也就是词库的词存在于文本中。

这样想的话,再用in就可以判断这个词在不在文本里面了,判断之后你是提取出来还是替换什么的,就看你怎么做了。

其实也可以用正则表达式暴力提取出来。

希望能帮到你

结巴分词后再匹配

和兔子的思路一样,实际上和分词里面的对stopword处理一样,可参考结巴分词中使用的whoosh库里各类

Tokenizer()

StopFilter()

代码地址

Tokenizer()

用于对需匹配文本做处理,里面很多种你选一种就行,如果对分词处理不太确定的话,可使用jieba,然后用”jieba.cut’或’jieba.cut_for_search’对文本进行分词,然后把你的词库写成列表,后面的

StopFilter()

实际上就是个for循环判断if in就行了。

这样行么

import re

text = '''python从一段文本中找出存在于词库的词语

有现成的库吗?'''

ciku = ['文本', '一段', '词语', '没有']

pattern = '|'.join(ciku)

re.findall(pattern, text)

>>>

['一段', '文本', '词语']

AC自动机 字数限制?单词忘了咋拼的了

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值