Apache Lucene 替换找到的术语

Apache Lucene to replace found terms

我正在寻找一种使用 Apache Lucene 根据文本中的查询查找和替换单词的方法。 示例 - 我有一个文本“新年快乐!” Lucene 使用模糊检测和一些替换字符(“###”)查询“year~2”。结果我想要以下内容 - “Happy New ###!”。有没有办法只使用 Apache Lucene 来实现这一点?

以防万一有需要的人。我设法使用 Apache Highlighter 解决了这个问题。请参阅下面的代码示例

Highlighter highlighter = new Highlighter((originalText, tokenGroup) -> {
    if (tokenGroup.getTotalScore() <= 0) {
        return originalText;
    }
    return "###";
}, new QueryScorer(query));
// ...
String highlighted = highlighter.getBestFragments(tokenStream, fieldText, 100, "...");