MYSQL找到两个文本字段的不同之处?

时间:2012-03-02 21:01:35

标签: php mysql string email text

我将电子邮件的HTML内容存储在我的数据库中。

如果我在我的数据库中存储了两个相同的电子邮件,由于个性化(可能会说“Hello Stephen,感谢您订阅......”,另一个“Hello Andrew,谢谢订阅...“)。

我怎么知道这些文字字段只是略有不同? (也许得到一个百分比,说他们有95%相似)。

2 个答案:

答案 0 :(得分:4)

这是MySQL的一个很好的起点: http://www.artfulsoftware.com/infotree/queries.php#552

Levenshtein距离是将一个字符串转换为另一个字符串所需的编辑次数。您可能会将该距离除以字符串的长度,以获得一定百分比的排序。

对于PHP,有一个内置的Levenshtein函数:http://www.php.net/manual/en/function.levenshtein.php

答案 1 :(得分:1)

这也有助于:http://www.php.net/manual/en/function.similar-text.php。 similar_text()返回两个字符串中匹配字符的数量。