• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >编程问答 > python如何高效的判断一个长字符串是否包含某些关键字?

python如何高效的判断一个长字符串是否包含某些关键字?

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-06-07

佚名通过本文主要向大家介绍了python 字符串,python 字符串转数字,python 字符串截取,python 字符串拼接,python 字符串替换等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题:python 如何高效的判断一个长字符串是否包含某些关键字?
描述:

一个数据库表中含有一系列的关键字,现在传入一字符串,如何高效的判断数据表中哪些关键字在这个字符串中。
只是一个简单的数据表 包括两个字段 关键字 和 关键字的描述
数据表只有几千条数据 字符串是一句话,包含中文和英文字符,为的是提高查询效率


解决方案1:

省事点用 sqlite fts4 全文索引好了,这样可以一条字段存入多条关键字,
查询时给句子拆分下加入 OR 语法,select 用下 snippet 函数得到匹配的关键字。

把数据存到 sqlite fts4 全文索引表(sqlite 有在 python 标准库里不需要其他依赖,可以用内存数据库),fts4 默认会按标点和空格分词,所以处理中文时预先插入空格就没问题(插入 \r 之类也行)。

如果要求判断子字符串而不是按单词判断,存入数据时先用空格把字母和字符逐个隔开,查询时也逐个隔开并加上适当引号和 * 号,

而如果是想分词却担心有黄词漏网的话,存入数据和查询句子都用二元分词就可以了。

解决方案2:

跟python无关,你需要的是AC自动机算法(多模式串匹配)。

而如果是要实现搜索,那么实际上应当使用倒排索引,才能达到最优的效果。


分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • (python)dateutilparser处理不完整时间字符串
  • (python)二维数组中怎么求出被0封闭的1图形的最多角?
  • python截取一段字符串中想要得内容
  • python爬虫python如何计算出现最多的字符串dict
  • (python)对出现字符串的计数,四种方法,第三种不知道怎么不行
  • 判断字符串为数字(python)如何判断字符串为企业注册名称
  • (python)jsonpcallback的一串数字是如何生成的?
  • json字符串python字符串转json出错
  • (python)numpymatrix如何进行单个数字的运算?
  • (python)如何把152753这个字符串转变成时间格式15:27:53

相关文章

  • 2017-06-07 上传的文档的时候提示doesnotexist
  • 2017-06-07 上传文件失败
  • 2017-06-07 更新Jboss_Root\server\default\MyAppwar下的文件,项目重新启动后,效果和没改前一样。
  • 2017-06-07 (golang)go语言可以用来做桌面软件吗?界面库用什么啊?
  • 2017-06-07 (golang)docker容器无法启动nosuchfileordirectorystatusCode=404
  • 2017-06-07 Java内部类Java中,关于匿名内部类调用外部类方法的疑惑
  • 2017-06-07 python应该怎么学?学到什么程度能够找一份工作了?
  • 2017-06-07 (golang)为什么一个接口变量既可以被赋值为一个结构体实例,又可以被赋值为结构体指针
  • 2017-06-07 你好前辈python采集百度地图商家信息的
  • 2017-06-07 七牛设置好样式后缀写在哪里

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • OSX安装pkg一直卡在:正在准备安装与homebrew问题
    • 请教使用JBoss部署war包的问题!
    • 微信不好使python36IDLE不好使啥原因?
    • 7牛有QQ群吗
    • "CURLE_SSL_CONNECT_ERROR35"错误寻求解决方法
    • mac下如何在terminal里输入命令新建一个终端
    • 这些云存储们,有个共同问题,如何批量备份到本地?
    • 如何对文件夹加密python如何对日志文件里面的ip进行分类
    • 由于app的部分图片是存在七牛的,我能不能同时设置http和https共存?
    • leancloud中,querywhereMatches,"?"+name;查询名字不区分大小写?

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有