模糊搜索
![]() |
模糊搜索的定義主要有兩種觀點。
一是系統允許被搜索信息和搜索提問之間存在一定的差異,這種差異就是「模糊」在搜索中的含義。例如,查找名字Smith時,就會找出與之相似的Smithe,Smythe,Smyth,Smitt等。
二是實質上的搜索系統自動進行的同義詞搜索。同義詞[1]由系統的管理界面配置。例如,配置「計算機」與「computer」為同義詞後,搜索「計算機[2]」,則包含「computer」的網頁也會出現在搜索結果中。
應用
圖片模糊檢索
將本地圖片輸入到圖片搜索框,
1、假如你的圖片帶有意義的標題,比如「衣服」,那麼搜索結果會顯示相關文本搜索結果
2、假如你的圖片標題沒有任何含義,搜索結果只顯示相關圖片。
3、搜索精準度隨不同圖片可達到的滿意程度不同,往往越是主流商業圖片越精準
目前像百度、谷歌等搜索引擎及淘寶等平台均可實現此應用。
文本模糊搜索
搜索引擎或門戶網站搜索:將文本輸入搜索框,選擇模糊搜索模式,即可得到匹配結果。
數據庫搜索:一般模糊查詢語句如下:SELECT字段FROM表WHERE某字段Like條件。
其中關於條件,SQL提供了四種匹配模式:
1、%:表示任意0個或多個字符。可匹配任意類型和長度的字符,有些情況下若是中文,請使用兩個百分號(%%)表示。
2、_:表示任意單個字符。匹配單個任意字符,它常用來限制表達式的字符長度語句:
3、[]:表示括號內所列字符中的一個(類似正則表達式)。指定一個字符、字符串或範圍,要求所匹配對象為它們中的任一個。
4、[^]:表示不在括號所列之內的單個字符。其取值和[]相同,但它要求所匹配對象為指定字符以外的任一個字符。
5,查詢內容包含通配符時
由於通配符的緣故,導致我們查詢特殊字符「%」、「_」、「[」的語句無法正常實現,而把特殊字符用「[]」括起便可正常查詢。
在不同的數據庫中,模糊搜索的語句會有不同,可在系統幫助文檔中了解。
前景與目標
模糊搜索要達到的目標是用戶不需要關心搜索系統的結構,任意輸入一串字符或者數字,只要搜索範圍中包含該信息,通過該方法就能夠找出該信息包含在哪個表,哪個字段里,或者具體哪個位置,進而可以進行更為詳細的查詢。模糊搜索可以實現以下幾個目標:
(1)大小寫不進行區分。
(2)要實現前後模糊查詢。
(3)字符與數字不區分的模糊查詢。
(4)與數據模型無關的模糊查詢。
參考文獻
- 移至 ↑ 同義詞替換 Day 14,搜狐,2022-11-17
- 移至 ↑ 主機演進:從古老的計算機到現代智能設備 ,搜狐,2024-03-28