2010-01-16 77 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