我們有一個網站,我們將使用Windows搜索功能來允許用戶搜索網站的頁面和文檔。鑑於大多數用戶已經熟悉谷歌風格的搜索語法,我希望儘可能直觀地進行搜索。但是,使用Windows Search似乎存在兩個問題。構建Windows搜索查詢
如果我使用
FREETEXT()
謂語,然後用戶可以輸入一定的谷歌風格的語法選項,如精確短語匹配雙引號或使用減號來排除某個詞。這些是我認爲必要的功能。然而,FREETEXT()
謂詞似乎要求每個搜索詞都出現在頁面/文檔的某處,以便在結果中返回它。如果我使用
CONTAINS()
謂語,然後用戶就可以使用布爾運算符輸入搜索條件,他們可以使用*
字符執行通配符搜索。但是,所有搜索條件必須由邏輯運算符之一連接或用雙引號括起來。
我想要的是兩者的結合。用戶應該能夠使用雙引號標記來搜索確切的短語,使用減號來排除單詞,但是也可以使用不帶引號的內容進行通配符匹配(例如,搜索civ將返回包含civil或civility詞語的文檔或文明)。
我怎麼能去實現這個?