实例

计算两个字符串之间的 Levenshtein 距离:

<?php echo levenshtein("Hello World","ello World"); echo "<br>"; echo levenshtein("Hello World","ello World",10,20,30); ?>

定义和用法

levenshtein() 函数返回两个字符串之间的 Levenshtein 距离。

Levenshtein 距离,又称编辑距离,指的是两个字符串之间,由一个字符串转换成另一个字符串所需的最少编辑操作次数。许可的编辑操作包括将一个字符替换成另一个字符,插入一个字符,删除一个字符。

在默认情况下,PHP 给每个操作(替换、插入和删除)相同的权重。然而,您可以通过设置可选的 insert、replace、delete 参数,来定义每个操作的代价。

注释:levenshtein() 函数是不区分大小写的。

注释:levenshtein() 函数比 similar_text() 函数更快。不过,similar_text() 函数通过更少的必需修改次数提供更精确的结果。


语法

levenshtein(string1,string2,insert,replace,delete)
参数 描述
string1 必需。要比较的第一个字符串。
string2 必需。要比较的第二个字符串。
insert 可选。插入一个字符的代价。默认是 1。
replace 可选。替换一个字符的代价。默认是 1。
delete 可选。删除一个字符的代价。默认是 1。

技术细节

返回值: 返回两个参数字符串之间的 Levenshtein 距离,如果其中一个字符串超过 255 个字符,则返回 -1。
PHP 版本: 4.0.1+

最新文章

  1. Linux:Vmware安装linux虚拟机,桥接方式配置静态IP后重启网卡,提示:Error,some other host already uses address 10.252.252.21...
  2. Linux i2c子系统(三) _解决probe无法执行
  3. 手把手教学系列:从零开始配置VPS服务器
  4. vue中&lt;select&gt;绑定事件
  5. day62 中间件
  6. 谈谈canvas的性能优化(主要讲缓存问题)
  7. nginx中try_files
  8. 使用安装脚本安装Texlive
  9. faceted project validation builder
  10. openstack 资料
  11. elasticsearch-环境搭建
  12. iOS 中strong,weak,copy,assign区别
  13. Ubuntu 18.10连接Windows 桌面
  14. POJ3068 &quot;Shortest&quot; pair of paths
  15. 如何使用火狐下的两款接口测试工具RESTClient和HttpRequester发送post请求
  16. Unity Shader入门精要读书笔记(二)UnityShader概述
  17. Selenium驱动Firefox浏览器
  18. (2)Flutter vscode安装
  19. DATAX动态参数数据传递
  20. Android 使用xml实现边框阴影,背景渐变效果(附有RGB颜色查询对照表)

热门文章

  1. centos-docker安装及基本使用
  2. 基于SpringBoot AOP面向切面编程实现Redis分布式锁
  3. day81 初识drf
  4. Ubuntu下编译安装postgreSQL 10.5
  5. java 面向对象(二十六):枚举类的使用
  6. 数据可视化之powerBI技巧(十五)采悟:Power BI动态技巧:动态显示数据层级
  7. 机器学习实战基础(二十):sklearn中的降维算法PCA和SVD(一) 之 概述
  8. Django之 admin组件
  9. Mysql and ORM
  10. tensorboard学习笔记