由於明天有活動,今天就把(四)和(五)一起給弄出來了,希望大家喜歡。
下面是分詞程序中,分詞的結果就是使用下面的方法得到,這個我是寫在KeyWordTree類中,但是大家喜歡了。
其實也可以放在應用程序中。


/**//// <summary>

/// 分詞,鍵樹查找

/// </summary>

/// <param name="strText">分詞內容</param>

/// <returns>分詞結果</returns>

public string FindKeyWord(string strText)


...{

List<KeyWordTreeNode> tmpRoot = Root.ChildList;

StringBuilder strBuilder = new StringBuilder();

int CC = 0; //已經查到字符數 ,為了找不到的時候,判斷是否退回一個字符

for (int iCount = 0; iCount < strText.Length; iCount++)


...{

int tmpIndex = FindIndex(tmpRoot, strText[iCount]);

if (tmpIndex == -1)


...{

if (CC == 0)


...{

strBuilder.Append(strText[iCount]+"|");

}

else


...{

iCount -= 1;

strBuilder.Append("|");

}

tmpRoot = Root.ChildList;

CC = 0;

}

else


...{

strBuilder.Append(strText[iCount]);

//添加ID記錄


tmpRoot = tmpRoot[tmpIndex].ChildList;

CC++;

}

}

return strBuilder.ToString();

}