很多時候我們在面對信息檢索時,沒法記得完整的信息內(nèi)容,這時我們可以引入兩個概念:“精準(zhǔn)搜索”和“模糊搜索”。兩者都是指系統(tǒng)自動按照用戶輸入的關(guān)鍵詞進(jìn)行查找,不同之處在于一個是精準(zhǔn)查找,一個是模糊查找。精準(zhǔn)查找是精準(zhǔn)匹配到信息中的正確內(nèi)容,往往得出的結(jié)果數(shù)量較少,相反模糊查找是找到所有與關(guān)鍵詞相關(guān)的數(shù)據(jù),往往得出的結(jié)果數(shù)量比較多。很多程序軟件都支持這兩種搜索,例如:數(shù)據(jù)庫、Office軟件、瀏覽器……
我們通過VB程序來模擬一下模糊查找的過程:假設(shè)你是一名學(xué)校的代課老師,由于同學(xué)較多,記不住名字,于是用VB軟件做了一款模糊查詢軟件,只需要輸入同學(xué)名字中的任何字符便可以查詢到同學(xué)的信息,如果搜索到的內(nèi)容有多個結(jié)果就會全部顯示,如果一個結(jié)果也沒有搜索到就顯示查無此人??靵韲L試完成吧。
首先我們創(chuàng)建兩個列表和一個文本框。一個列表用來存放學(xué)生姓名信息,另外一個列表用來存放查找結(jié)果。文本框用來存放需查找的內(nèi)容。
程序開始運(yùn)行后,記錄下文本框的內(nèi)容和長度,接下來通過姓名列表查詢相關(guān)內(nèi)容,查詢的過程中需要用到雙重循環(huán)的方法:外層遍歷列表中內(nèi)容的個數(shù),內(nèi)層要對列表中每行內(nèi)容遍歷,并且通過MID函數(shù)提取判斷內(nèi)容與查找的信息進(jìn)行比較,如果相等的話將內(nèi)容添加到輸出列表中,如果沒有找到查詢信息,跳出循環(huán),顯示查無此人。
這種模糊查詢的方法相對比較簡單,但是面對大量數(shù)據(jù)查詢的效率較低。大家可以想想在這基礎(chǔ)上添加一些實(shí)用的功能比如索引文件,或者根據(jù)用戶選擇進(jìn)行刪除調(diào)整。