gpt4 book ai didi

java - 如何跳过 StopFilter 以获取单字值

转载 作者:太空宇宙 更新时间:2023-11-04 12:51:14 25 4
gpt4 key购买 nike

我想创建自己的分析器,但仅对多字值应用 StopFilter,并且仍然使用单字值(停用词本身)对停用词进行索引

new Analyzer() {
protected Analyzer.TokenStreamComponents createComponents(String fieldName) {
final StandardTokenizer src = new StandardTokenizer();
TokenStream tok = new StandardFilter(src);
tok = new LowerCaseFilter(tok);
tok = new StopFilter(tok, StandardAnalyzer.STOP_WORDS_SET);
return new Analyzer.TokenStreamComponents(src, tok);
}
}

例如,我有 2 个值:

1. this
2. this table
3. table

使用上面的分析器,查询字符串是“this”,没有找到结果。但我希望对于该查询,结果应包含值 1 (this),而不包含值 2 (this table)

最佳答案

你可以试试这个:

...
final StandardTokenizer src = new StandardTokenizer();
src.setReader(new StringReader("this table"));
...

关于java - 如何跳过 StopFilter 以获取单字值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35813500/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com