作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在自定义分析器实现的 createComponents 实现中使用了 HTMLStripCharFilter,但 HTML 并未从内容中剥离。请在下面找到代码。
@Override
protected TokenStreamComponents createComponents(String fieldName)
{
StandardTokenizer source = new StandardTokenizer();
source.setReader(mStripHTML ? new HTMLStripCharFilter(getReader()) : getReader());
source.setMaxTokenLength(maxTokenLength);
TokenStream result = new StandardFilter(source);
result = new LowerCaseFilter(result);
return new TokenStreamComponents(source, result);
}
最佳答案
您的 CharFilter 不应在 createComponents 方法中定义,而应在 initReader 中定义:
@Override
protected Reader initReader(String fieldName, Reader reader) {
return mStripHTML ? new HTMLStripCharFilter(reader) : reader;
}
@Override
protected TokenStreamComponents createComponents(String fieldName)
{
StandardTokenizer source = new StandardTokenizer();
source.setMaxTokenLength(maxTokenLength);
TokenStream result = new StandardFilter(source);
result = new LowerCaseFilter(result);
return new TokenStreamComponents(source, result);
}
关于java - HTMLStripCharFilter 在自定义分析器的 createComponent 实现中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37298367/
我在自定义分析器实现的 createComponents 实现中使用了 HTMLStripCharFilter,但 HTML 并未从内容中剥离。请在下面找到代码。 @Override prot
我想用 FrenchAnalyzer 索引 Html 文本,所以我需要在分析它之前去除 Html。 我想在搜索后突出显示关键字所以solution like this one不起作用,因为我想保留字符
我是一名优秀的程序员,十分优秀!