什么是分詞分詞技術就是搜索引擎針對用戶提交查詢的關鍵詞串進行的查詢處理后根據用戶的關鍵詞串用各種匹配方法進行分詞的一種技術。
獨占網絡講網站建設分詞今天獨占網絡來講的分詞,就是基
于Lucene+Analyzer分詞
基本信息1、Lucene.NET.dll(在線下載)
2、PanGu.dll(在線下載)
3、PanGu.Lucene.Analyzer.dll(在線下載)
4、字典文件(dict文件)
將dll文件還有字典文件引入到asp.net項目中去

下面是分詞過程ArrayList con = new ArrayList();
//判斷信息是否存在
if (!string.IsNullOrEmpty(keyword))
{
//判斷是否存在非法信息
if (Fangfa.StringFangFa.ProcessSqlStr(keyword))
{
Analyzer anal = new PanGuAnalyzer();//使用盤古分詞
StringReader keywords = new StringReader(keyword);
TokenStream ts = anal.ReusableTokenStream("", keywords);
Token t = null;
//循環得到分詞的信息
while ((t = ts.Next()) != null)
{
con.Add(t.TermText());
}
}
else
{
keyword = string.Empty;
}
}
后就是分詞搜索代碼StringBuilder strSql = new StringBuilder();
strSql.Append("select top 100 * from tablename");
if (strWhere.Trim() != "")
{
strSql.Append(" where " + strWhere);
}
string newsql = string.Empty;
if (con.Count > 0)
{
for (int i = 0; i < con.Count; i++)
{
if (!string.IsNullOrEmpty(newsql))
{
newsql += " or ";
}
newsql += " subject like @keyword" + i + " ";
}
}
SqlParameter[] parameters = new SqlParameter[con.Count]; ;
if (con.Count > 0)
{
for (int i = 0; i < con.Count; i++)
{
parameters[i] = new SqlParameter("@keyword" + i, SqlDbType.NVarChar, 255);
parameters[i].Value = "%" + con[i].ToString() + "%";
}
}
strSql.Append(" order by " + filedOrder);
通過上面的幾步方法我們就可以完成一個基本的
asp.net網站建設分詞效果,全站搜引的功能就等下一課來講。
下面有一個網上盤古分詞的例子,大家可以直接在里面找到.dll文件和字典
http://download.csdn.net/detail/lijun7788/4412762