使用solr像数据库like搜索
来源:互联网 发布:js 调用软键盘 编辑:程序博客网 时间:2024/05/22 06:08
1.我这边先拿pro_name做案例
<fieldType name="string_ci" class="solr.TextField" sortMissingLast="true" omitNorms="true"> <analyzer> <tokenizer class="solr.KeywordTokenizerFactory"/> <filter class="solr.LowerCaseFilterFactory" /> </analyzer></fieldType><field name="pro_name" type="string_ci" indexed="true" stored="true"/>(1)我这边的是将这个字段的值全部转成小写,如值是KIT,但只有pro_name:kit,这样搜索才能搜到值
(2)想要模糊搜索字段的属性值是不能分词的。KeywordTokenizerFactory这个是让值不分词,LowerCaseFilterFactory是将字母全转成小写才能搜索
现在你们认为可以了吗,先看案例吧!
这样确实是搜到了3千多了,现在换个条件搜索
2.看见没这个并没有想数据库like那样,后来在网上找了好久才发现是转义符的问题
public static String transformMetachar(String input){ StringBuffer sb = new StringBuffer(); try{ String regex = "[+\\-&|!(){}\\[\\]^\"~*?:(\\)\\s]"; Pattern pattern = Pattern.compile(regex); Matcher matcher = pattern.matcher(input); while(matcher.find()){ matcher.appendReplacement(sb, "\\\\"+matcher.group()); } matcher.appendTail(sb); } catch(Exception e){ e.printStackTrace(); } return sb.toString(); }将刚刚的字符串放入得到od\ 2\ K,现在再搜索
好了,是不是很方便!!
阅读全文
0 0
- 使用solr像数据库like搜索
- 使用lucene solr搭建Oracle数据库全文搜索服务
- solr搜索参数使用小结
- JDBC传入参数使用LIKE模糊搜索
- Solr(二)——Java使用solr全文搜索
- 使用Apache Solr实现企业搜索
- Solr搜索
- solr搜索
- solr搜索
- mysql使用like搜索不区分大小写方法之一
- 分布式搜索elasticsearch java API 使用More like this实现
- mysql使用like模糊搜索json的数据
- Solr-----7、Solr使用DataImportHandler导入数据库数据
- 搜索引擎之阿堂Solr学习笔记系列3(进阶篇:数据库solr搜索基础)
- 搜索引擎之阿堂Solr学习笔记系列4(进阶篇:数据库solr搜索实战)
- [转]使用 PHP 和 Apache Solr 实现企业搜索
- 使用 Apache Solr 实现更加灵巧的搜索
- 使用 Apache Lucene 和 Solr 进行位置感知搜索
- Java EE上路之eclipse下载与安装
- Python数据分析笔记(二)
- 【c基础练习】指针
- 初识preparedStatement --- 真他妈不好理解 --- 查询模板
- Centos5.7 配置安装 Node.js
- 使用solr像数据库like搜索
- c#--利用泛型将字符串转化为指定类型的值
- 网上获取图片,展现在ListView上,
- CodeForces
- Java(4):基础:面向对象学习的重要点
- 侧滑+fragment+上拉和下拉刷新+多条目
- JS事件模型解释
- Java Web Start实例
- 作业