我用ChineseAnalyzer进行中文分词,我在搜索的时候,怎么来进行关键字的处理?如果我要搜索浙江省中小学,这“浙江省”与“中小学”之间用空格格开,空格为全角的或半角的,搜出来的结果完全不一样,另外,也有很多搜索不出来,感觉。不知道这个关键字是不是在传入搜索之前也要进行分词?还是要怎么处理
问题补充:
TextReader reader = new System.IO.StringReader(key);
WhitespaceTokenizer t = new WhitespaceTokenizer(reader);
BooleanQuery dd = new BooleanQuery();
BooleanClause.Occur[] flags = new BooleanClause.Occur[] {BooleanClause.Occur.SHOULD, BooleanClause.Occur.SHOULD };
Lucene.Net.Analysis.Token k = t.Next();
while (k != null)
{
Query query = MultiFieldQueryParser.Parse(k.ToString(), new String[] { "title", "content" }, flags, analyzer);
dd.Add(query, BooleanClause.Occur.MUST);
k = t.Next();
}
Sort sort = new Sort(new SortField("id", SortField.INT, true));
我现在这样处理了,不知道是否正规