2010-01-16 75 views
-1

我想在下面的關鍵字進行檢索時,發現文章:PHP/SQL搜索

我想查詢或PHP的正則表達式,可以發現其中有一篇文章「馬魯蒂對本田思迪SX4維護成本」低於文字

「SX4的維護成本較低,因爲馬魯蒂本田市的維護也不錯。」

即我想要一個函數/代碼可以通過匹配「維護成本」(這是常見的文本)找到文章

請指導我該怎麼辦呢

感謝 薩蒂什Kalepu

+0

這裏沒有涉及數據庫,對嗎? – 2010-01-16 08:17:41

回答

2

直截了當的解決方案

不那麼有效的解決方案是將您的每個搜索詞逐一匹配到您的完整文章集。對於每個新的查詢,你都會重複這個過程。 使用explode將您的查詢字符串拆分爲單個搜索項的數組,stripos也測試該項是否出現在文章的文本中。

文獻檢索系統

如果要從頭開始創建一個完整的文檔檢索系統,你應該通過創建一個index地圖搜索方面的文件(文章)開始。

然後,對於每個單獨的搜索字詞,您可以檢索匹配的文檔。 匹配最多的文檔將是搜索系統的輸出,或者您可以通過匹配的搜索詞條數量對搜索到的文檔進行排名。

,如果你考慮到這簡單的想法會變得更加先進word stemmingdocument/term frequency(即單詞「the」是比「本田」的搜索查詢不感興趣,因爲幾乎所有的文件含有「的」,但很少含有「本田」)。

+0

非常感謝 – 2010-01-16 08:48:09