找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1886|回复: 0
打印 上一主题 下一主题

PHP改进计算字符串相似度的函数similar_text()、levenshtein()

[复制链接]

2536

主题

2536

帖子

7532

积分

论坛元老

Rank: 8Rank: 8

积分
7532
跳转到指定楼层
楼主
发表于 2018-2-14 05:53:44 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

            similar_text()中文汉字版
[U]复制代码[/U] 代码如下:
     
levenshtein()中文汉字版

[U]复制代码[/U] 代码如下:
      $d[$mb_len1][$mb_len2], 'count_same_letter' => $count_same_letter);  
     }   

最长公共子序列LCS()


[U]复制代码[/U] 代码如下:
          $len_2 ? $len_1 : $len_2;  
           $dp = array();  
           for ($i = 0; $i  $dp[$i][$j - 1] ? $dp[$i - 1][$j] : $dp[$i][$j - 1];  
               }  
             }  
           }  
           return $dp[$len_1][$len_2];  
         }  
         //拆分字符串  
         function mbStringToArray($string, $encoding = 'UTF-8') {  
           $arrayResult = array();  
           while ($iLen = mb_strlen($string, $encoding)) {  
             array_push($arrayResult, mb_substr($string, 0, 1, $encoding));  
             $string = mb_substr($string, 1, $iLen, $encoding);  
           }  
           return $arrayResult;  
         }  
         //最长公共子序列中文版  
         function LCS_cn($str1, $str2, $encoding = 'UTF-8') {  
           $mb_len1 = mb_strlen($str1, $encoding);  
           $mb_len2 = mb_strlen($str2, $encoding);  
           $mb_str1 = mbStringToArray($str1, $encoding);  
           $mb_str2 = mbStringToArray($str2, $encoding);  
           $len = $mb_len1 > $mb_len2 ? $mb_len1 : $mb_len2;  
           $dp = array();  
           for ($i = 0; $i  $dp[$i][$j - 1] ? $dp[$i - 1][$j] : $dp[$i][$j - 1];  
               }  
             }  
           }  
           return $dp[$mb_len1][$mb_len2];  
         }
            
            
您可能感兴趣的文章:
  • php 大数据量及海量数据处理算法总结
  • php数字游戏 计算24算法
  • PHP中计算字符串相似度的函数代码
  • 关于PHP的相似度计算函数:levenshtein的使用介绍
  • 如何使用php绘制在图片上的正余弦曲线
  • PHP大转盘中奖概率算法实例
  • PHP实现的简易版图片相似度比较
  • php计算两个整数的最大公约数常用算法小结
  • php查询相似度最高的字符串的方法
  • php编写的抽奖程序中奖概率算法
  • 使用PHP similar text计算两个字符串相似度
  • PHP数据分析引擎计算余弦相似度算法示例
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端