Lucene.Net 查询的问题,第一次弄大家多帮忙^多谢
测试数据
title
测试标题
51aspx
51aspx测试标题
abc
1。建立索引
IndexWriter writer = null;
writer = new IndexWriter(INDEX_STORE_PATH, new StandardAnalyzer(), true);
SqlDataReader myred = ExecuteQuery("select title,content from article");
//建立索引字段
while (myred.Read())
{
Document doc = new Document();
doc.Add(new Field("title", myred["title"].ToString(), Field.Store.YES,Field.Index.TOKENIZED));
writer.AddDocument(doc);
}
myred.Close();
myred.Dispose();
writer.Optimize();
writer.Close();
2。查询
string INDEX_STORE_PATH = Server.MapPath("index"); //INDEX_STORE_PATH 为索引存储目录
string keyword = TextBox2.Text;
Hits myhit = null;
IndexSearcher mysea = new IndexSearcher(INDEX_STORE_PATH);
QueryParser q = new QueryParser("indexcontent", new StandardAnalyzer());
Query query = q.Parse(keyword);
myhit = mysea.Search(query);
Response.Write("关于:" + keyword + " 搜索到" + myhit.Length() + "个结果<br>");
问题.
是现在我输入"5"不能查出现在的两条数据,但输入"51aspx"就能查出来,输入"abc"也查不到数据
那位高手帮我看一下多谢了
------解决方案--------------------
StandardAnalyzer分词的问题
------解决方案--------------------
你查询aspx也不会有结果