默认情况下单词“Word”和“word”不一样。我如何让Lucene不区分大小写?如何使lucene不区分大小写
8
A
回答
13
最简单的方法是降低所有可搜索的内容以及查询。请参阅LowerCaseFilter
文档。您还可以使用Wildcard
查询进行不区分大小写的搜索,因为它绕过Analyzer
。
如果您喜欢,您可以将内容存储在不同的字段中以捕获不同的案例配置。
0
5
StandardAnalyzer
适用LowerCaseFilter
,这将使“单词”和“单词”相同。你可以简单地通过你的使用IndexWriter
和QueryParser
。例如。几行代码片段:
Analyzer analyzer = new StandardAnalyzer(Version.LUCENE_30);
IndexWriter writer = new IndexWriter(dir, analyzer, true, mlf);
QueryParser parser = new QueryParser(Version.LUCENE_30, field, analyzer);
1
将LowerCaseFilterFactory添加到Schema.xml中该字段的fieldType中。例如,
<fieldType name="text" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="1" catenateNumbers="1" catenateAll="0" splitOnCaseChange="1" preserveOriginal="1" />
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="0" catenateNumbers="0" catenateAll="0" splitOnCaseChange="1"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
</fieldType>
+0
伟大的答案,但问题是关于Lucene的,它不具有像模式做的Solr – 2017-01-30 03:58:54
相关问题
- 1. Lucene如何区分大小写和不区分大小写
- 2. 如何使lucene索引字段不区分大小写
- 3. Luke Lucene QueryParser区分大小写敏感
- 4. lucene过滤器区分大小写
- 5. 如何使preg_quote不区分大小写?
- 6. 如何使automapper不区分大小写?
- 7. 如何使Oracle不区分大小写
- 8. 如何使jquery不区分大小写?
- 9. 如何使strpos不区分大小写
- 10. 如何使preg_match不区分大小写?
- 11. 如何使String.Contains不区分大小写?
- 12. 使区分大小写不敏感的区分大小写表
- 13. 的PHP Zend Lucene的做搜索“不区分重音”,如“不区分大小写”
- 14. 如何区分大小写?
- 15. 区分大小写的URL不区分大小写
- 16. VB.NET不区分大小写;很好的区分大小写?
- 17. 为什么区分大小写和不区分大小写?
- 18. 区分大小写区分大小写还是全大写?
- 19. 如何使Array.Sort区分大小写?
- 20. 如何使SQL区分大小写
- 21. 不区分大小写
- 22. 不区分大小写preg_replace_callback
- 23. distinctUnionOfObjects不区分大小写
- 24. 不区分大小写
- 25. System.IO.FileInfo不区分大小写
- 26. MySQL不区分大小写
- 27. 不区分大小写Func
- 28. 不区分大小写#define
- 29. 不区分大小写OptionParser
- 30. FirebirdSql不区分大小写
一两行的示例源代码可以让你的答案完全 – 2017-11-23 13:02:21