我正在使用Lucene搜索作业现场,并用这样的问题应对。我需要搜索C#,.net所以我需要使用WhiteSpaceAnalyzer,但是如果我使用它,搜索将是情况感性的。Lucene的自定义分析
我怎么能做出这种情况下insensative?现在我看到只有一个解决方案是制作自己的分析器。但我是Lucene的新手,能否请你帮我解决一些代码示例。我做了一些我认为必须工作的东西,但事实并非如此。看
public sealed class NewWhitespaceAnalyzer : Analyzer
{
public override TokenStream TokenStream(System.String fieldName, System.IO.TextReader reader)
{
return new LowerCaseFilter(new WhitespaceTokenizer(reader));
}
public override TokenStream ReusableTokenStream(System.String fieldName, System.IO.TextReader reader)
{
Tokenizer tokenizer = (Tokenizer)GetPreviousTokenStream();
if (tokenizer == null)
{
tokenizer = new WhitespaceTokenizer(reader);
SetPreviousTokenStream(tokenizer);
}
else
tokenizer.Reset(reader);
return tokenizer;
}
}
如果你会在这里看到错误,请纠正我。
如果您有任何其他建议,你是wlcome。
感谢您的帮助, 迪马。
什么不起作用这段代码? – Prescott