如何使用Lucene实现语音搜索?

Edu*_*pes 2 java lucene

我想使用Lucene 6.1.0实现语音搜索,使用Soundex或任何合适的葡萄牙语算法.我在互联网上发现了许多不完整的例子,教导了如何实现自定义标记器,分析器,但似乎这些例子中使用的抽象类在6.1.0版本中并不相同.任何人都可以指出我在哪里可以找到一个很好的文档Lucene,而不仅仅是java文档,没有任何进一步的文档教学如何把事情放在一起?

提前致谢.

fem*_*gon 6

分析仪文档演示如何创建您的分析仪.

对于语音分析,您应该查看org.apache.lucene.analysis.phonetic包(您需要在构建路径中添加"lucene-analyzers-phonetic-6.1.0.jar",以及Apache的"公共" -codec-1.10.jar",你可以到这里来.

然后你可以设置你的分析器,例如:

Analyzer analyzer = new Analyzer() {
    @Override
    protected TokenStreamComponents createComponents(String fieldName) {
        Tokenizer tokenizer = new StandardTokenizer();
        TokenStream stream = new DoubleMetaphoneFilter(tokenizer, 6, false);
        return new TokenStreamComponents(tokenizer, stream);
    }
};
Run Code Online (Sandbox Code Playgroud)