Search Can Lucene';s TermRangeQuery是否使用不同的排序顺序?

Search Can Lucene';s TermRangeQuery是否使用不同的排序顺序?,search,lucene,Search,Lucene,Lucene根据BytesRef.compareTo对术语进行排序。也存在BytesRef.getUTF8SortedAsUnicodeComparator,但似乎无法将其用于术语范围查询 事实上,我想通过在“a”之后排序“ä”,或者甚至将它们视为相同的,从而使排序顺序更“自然”。查看TermRangeQuery的代码,我最终进入了Automaton类,不知道是否需要编写自己的自动机。或者我缺少一个可用的API?一个想法:将这些字符作为其ASCII等价物进行索引(即在分析器中添加一个API)对您

Lucene根据
BytesRef.compareTo
对术语进行排序。也存在
BytesRef.getUTF8SortedAsUnicodeComparator
,但似乎无法将其用于
术语范围查询


事实上,我想通过在“a”之后排序“ä”,或者甚至将它们视为相同的,从而使排序顺序更“自然”。查看
TermRangeQuery
的代码,我最终进入了
Automaton
类,不知道是否需要编写自己的自动机。或者我缺少一个可用的API?

一个想法:将这些字符作为其ASCII等价物进行索引(即在分析器中添加一个API)对您来说是一个合理的解决方案吗?这大致就是我现在正在做的:重新编码字符串,以便我知道会发生什么。但我必须处理不一定具有ascii等价物的字符串,我需要以某种方式覆盖整个unicode范围。我只是想知道用自定义比较器代替更直接的编码方式是否可行。