java-如何扩展Lucene的StandardAnalyzer以进行自定义特殊字符处理?

我将Lucene的StandardAnalyzer用于特定的索引属性.
由于àéèäöü之类的特殊字符未如预期那样被索引,因此我想替换以下字符:

>à->一种
>é-> Ë
>è-> Ë
>ä-> e
>ö-> oe
>ü-> UE

扩展org.apache.lucene.analysis.standard.StandardAnalyzer类的最佳方法是什么?

我正在寻找一种方法,使标准解析器遍历所有标记(单词),并且可以逐字检索单词并在那里做魔术.

感谢您的任何提示.

解决方法:

我建议使用MappingCharFilter,它将允许有一个String映射,该映射将被String替换,因此它完全适合您的要求.

一些其他信息-https://lucene.apache.org/core/6_0_0/analyzers-common/org/apache/lucene/analysis/charfilter/MappingCharFilter.html

上一篇:Lucene的初步了解和学习


下一篇:java-如何在Lucene 6中对数字字段进行排序