Java程序如何模糊匹配access数据库,然后access返回一个相应值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java程序如何模糊匹配access数据库,然后access返回一个相应值相关的知识,希望对你有一定的参考价值。
我想实现一个功能: 利用Java程序实现用户的输入的值与access数据库的字段模糊匹配,然后从access中返回相应的值输出。 比方说: 1. 用户输入“您好啊!”,然后数据库中“您好”匹配了,access中返回“您好,我是***!”; 2. 或者用户输入“什么什么下雨什么什么”,access中匹配相应的“下雨”,然后返回“赶快回家收衣服咯!”。 类似这样的匹配,然后返回相应的输出功能。 请高手能够给出代码并附带注释,然后有程序说明,谢谢了!
参考技术A 1.首先建立一个access数据库;2.与数据库建立联接;
3.SQL语言采用模糊查询;
4.执行查询并返回结果。 参考技术B 这个要用到分词技术用"java 分词"关键字google一下有很多这方面的资料
关键字模糊匹配
关键词模糊匹配,如候选词集合为{‘我爱北京天安门’,‘北京西站’,‘上海外滩’},输入‘北京’,要匹配出{‘我爱北京天安门’,‘北京西站’}
想到了如下几种方法:
1. 正则法
将所有关键词集合存入数组或字典中,然后用关键字进行正则匹配。
效率略慢,400万候选词的话,约用时4s
2.reids法
有两种子方法
- keys命令模糊匹配
keys *北京*
官方不推荐这种做法
- sscan命令模糊匹配
SSCAN myset 0 MATCH *北京* COUNT 4000000
400万候选词的话,约用时7s
3.mysql法
将关键词集合存入mysql,用like的方式匹配
效率低,400万候选词的话,用时约10s以上
4.分词建索引
实现较难,没有实践经验
以上是关于Java程序如何模糊匹配access数据库,然后access返回一个相应值的主要内容,如果未能解决你的问题,请参考以下文章
java中是如何实现基于文字标题的模糊匹配的,下面的代码是啥意思啊...