[lucene] 这样的结果,是分词问题吗?
TonyLian
2010-01-25
![]() ![]() 输入“中国 学生”,可以搜索到内容含有“...中国学生...”的文件, 而输入“中国学生”(中间没有空格)后,却什么结果也没有了。 请教,这是分词的问题吗? 我用过IK和CJK,都是这样。 还是建索引或搜索时有问题呢? |
|
TonyLian
2010-01-25
建索引的代码:
Analyzer analyzer = new IKAnalyzer(); iwriter = new IndexWriter(directory, analyzer, true, IndexWriter.MaxFieldLength.LIMITED); Document doc = new Document(); doc.add(new Field("CONTENTS", text, Field.Store.YES, Field.Index.ANALYZED)); iwriter.addDocument(doc); 搜索的代码: isearcher = new IndexSearcher(directory); Analyzer analyzer = new IKAnalyzer(); QueryParser parser = new QueryParser(Version.LUCENE_CURRENT, "CONTENTS", analyzer); Query query = parser.parse(q); TopDocs topDocs = isearcher.search(query, count); |
|
kexzcle
2010-01-25
大哥,下午出去办事了。
明天给我传PDF看看。 不应该这样啊 连在一起打,IK分词 中国/学生 两个去查 首先中国学生一起的结果在前面, 然后带中国或学生的也应该显示。 |