Lucene StandardAnalyzer 在编写索引时不转换为小写

Lucene StandardAnalyzer not converting to lowercase when writing index

我正在使用 Lucene 8.3 并遇到 StandardAnalyzer 的意外行为。为了隔离问题,我设法用 Luke 产生了相同的行为。以下是对 Luke 的描述:

我正在使用 StandardAnalyzer 创建一个新文档。一个字段:name=myField;类型=字符串字段;选项=存储值;值='Foo'

然后切换到搜索:解析术语'myField:Foo'表明它被转换为小写。这是 StandardAnalyzer 的预期行为。但是,搜索会产生零结果。切换到 WhitespaceAnalyzer 将解析相同的术语保留案例。搜索将提供我刚刚输入的一个新文档。

在我看来,StandardAnalyzer 在文档创建/索引写入期间不会将文本转换为小写。我的 Java 代码也有同样的情况。

我错过了什么?我还需要注意其他设置吗?

StringField不分析。使用 TextField.

常用字段类型记录在此处:http://lucene.apache.org/core/8_3_0/core/org/apache/lucene/document/Field.html