找回密码
 立即注册

QQ登录

只需一步,快速开始

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

使用PHP similar text计算两个字符串相似度

[复制链接]

2588

主题

2588

帖子

7694

积分

论坛元老

Rank: 8Rank: 8

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

            在网站开发中,我们经常使用php similar text 计算两个字符串相似度;
1,similar_text的用法
    如果我想计算"ly89cn"和"ly89"的相似程度,有两种表示方法
[U]复制代码[/U] 代码如下:
echo similar_text('ly89cn', 'ly89');
     这样输出4,因为他们有4个字符相等
[U]复制代码[/U] 代码如下:
similar_text('ly89cn', 'ly89', $percent);
echo $percent;   
这样输出80,$percent代表百分比,说明他们有80%的相似程度
    当然也可以比较两个中文字符,比如“王业楼的个人博客”和“王业楼”
[U]复制代码[/U] 代码如下:
echo similar_text('王业楼的个人博客', '王业楼');
    这样输出9,表示他们的9个字节数相等
[U]复制代码[/U] 代码如下:
similar_text('王业楼的个人博客', '王业楼', $percent);
echo $percent;
     输出54.545454545455,注意中文字符可能不大准确!
PHP similar_text() 函数
实例
计算两个字符串的相似度,并返回匹配字符的数目:
[U]复制代码[/U] 代码如下:
运行实例
定义和用法
similar_text() 函数计算两个字符串的相似度。
该函数也能计算两个字符串的百分比相似度。
注释:levenshtein() 函数比 similar_text() 函数更快。不过,similar_text() 函数通过更少的必需修改次数提供更精确的结果。
语法
[U]复制代码[/U] 代码如下:
similar_text(string1,string2,percent)

      参数
      描述
   
   
      string1
      必需。规定要比较的第一个字符串。
   
   
      string2
      必需。规定要比较的第二个字符串。
   
   
      percent
      可选。规定供存储百分比相似度的变量名。
   
技术细节

返回值:返回两个字符串的匹配字符的数目。
PHP 版本:4+

更多实例
例子 1
计算两个字符串之间的百分比相似度:
[U]复制代码[/U] 代码如下:
            
            
您可能感兴趣的文章:
  • php 大数据量及海量数据处理算法总结
  • php数字游戏 计算24算法
  • PHP中计算字符串相似度的函数代码
  • 关于PHP的相似度计算函数:levenshtein的使用介绍
  • 如何使用php绘制在图片上的正余弦曲线
  • PHP大转盘中奖概率算法实例
  • PHP改进计算字符串相似度的函数similar_text()、levenshtein()
  • PHP实现的简易版图片相似度比较
  • php计算两个整数的最大公约数常用算法小结
  • php查询相似度最高的字符串的方法
  • php编写的抽奖程序中奖概率算法
  • PHP数据分析引擎计算余弦相似度算法示例
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

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

    本版积分规则

    用户反馈
    客户端