例如,我在MySQL的表的值如下;

>  Foobar is cool
>  foobar was in here
>  Bla bla bla

即使用户拼写错误为“ fubar”,我也需要搜索文本为“ foobar”的结果
   >  Foobar is cool
   >  foobar was in here

最佳答案

您可以使用levenshtein函数,该函数返回将一个单词转换为另一个单词所需的最少字符更改。

此处显示一种实现方式https://stackoverflow.com/a/4671557/5546380

本示例仅比较两个单词,因此您需要修改此函数或创建一个新函数,调用该函数并对字段中的每个单词执行levenshtein,并在该单词超过某个阈值时返回,例如,将1个字符更改为“ fobar”为“ foobar”,“ foba”为2。

关于php - 如何从表中选择行相似但不完全相同的表以包括拼写错误?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36962319/

10-15 13:22