如何删除重复的内容?

时间:2013-06-08 13:47:11

标签: php mysql mongodb solr sphinx

我有一个机密网站(PHP和Mysql),用户可以免费发布广告。但用户经常发布重复的广告。该脚本不允许他们发布完全重复的内容,因此他们通过更改一个或两个字符来完成此操作。

有没有办法找到重复的广告并提醒用户(即使他们修改了部分文字)?

我的网站是PHP和Mysql。我正在使用sphix进行搜索。考虑将此更改为mongodb和apache solr。

3 个答案:

答案 0 :(得分:2)

去找战利品

计算两个字符串之间的相似性 http://php.net/manual/en/function.similar-text.php

OR

计算两个弦之间的Levenshtein距离 http://www.php.net/manual/en/function.levenshtein.php

答案 1 :(得分:0)

您可以编写一个函数,将句子分解为单词,然后将每个单词与表格匹配,然后在数据库中查找匹配百分比。根据您可以做出决定的百分比。对于较少的数据库检查,您可以删除可以存储在数组中的常用单词和动词。这是我个人的意见,可能还有一些其他更好的技巧。但我必须说这是一个很好的问题。

答案 2 :(得分:0)

Levenshtein距离,jaro winkler,抄袭算法......在SO上查看它们

我将从简单的莱文斯坦距离开始