私は初めて lucene.net を使用するので、コード行を見るといくつかの混乱が生じることに注意してください。lucene で単語を検索するためのサンプル コードを取得しましたが、いくつかの行が明確ではありません。以下にサンプル コードを示します。
質問1
ListBox1.Items.Clear();
var searcher = new Lucene.Net.Search.IndexSearcher(MapPath("~/searchlucene/"));
var oParser = new Lucene.Net.QueryParsers.QueryParser("content", new StandardAnalyzer());
string sHeader = " OR (header:" + TextBox1.Text + ")";
string sType = " OR (type:" + TextBox1.Text + ")";
string sSearchQuery = "(" + TextBox1.Text + sHeader + sType + ")";
var oHitColl = searcher.Search(oParser.Parse(sSearchQuery));
for (int i = 0; i < oHitColl.Length(); i++)
{
Document oDoc = oHitColl.Doc(i);
ListBox1.Items.Add(new ListItem(oDoc.Get("header") + oDoc.Get("type") + oDoc.Get("content")));
}
searcher.Close();
質問2
この下の行は、何が起こっているのか明確ではありません...!! 以下の各行の目的について説明してください。
string sHeader = " OR (header:" + TextBox1.Text + ")";
string sType = " OR (type:" + TextBox1.Text + ")";
string sSearchQuery = "(" + TextBox1.Text + sHeader + sType + ")";
var oHitColl = searcher.Search(oParser.Parse(sSearchQuery));
for (int i = 0; i < oHitColl.Length(); i++)
{
Document oDoc = oHitColl.Doc(i);
ListBox1.Items.Add(new ListItem(oDoc.Get("header") + oDoc.Get("type") + oDoc.Get("content")));
}
質問 3
ヘッダーとは:
タイプとは:
文字列のような検索キーワードの後にヘッダーとタイプが連結されている理由 sSearchQuery = "(" + TextBox1.Text + sHeader + sType + ")";
質問 4
検索クエリのコンテンツにコンテンツが欠落している理由 次のように書くとどうなるか
string sHeader = " OR (header:" + TextBox1.Text + ")";
string sType = " OR (type:" + TextBox1.Text + ")";
string sContent = " OR (content:" + TextBox1.Text + ")";
string sSearchQuery = "(" + TextBox1.Text + sHeader + sType + sContent ")";
ヘッダー、タイプ、コンテンツが読み取られる理由....何のために?? * oDoc.Get("ヘッダー") + oDoc.Get("タイプ") + oDoc.Get("コンテンツ") *
oDoc.Get("header") + oDoc.Get("type") + oDoc.Get("content")のようなヘッダー、タイプ、およびコンテンツを読み取る必要がある 理由も必要です??