位置: 编程技术 - 正文
推荐整理分享PHP字符串函数levenshtein()的用法(php字符串操作函数),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:php 字符串函数,php中字符串函数,php字符串包含某个字符串,php 字符串函数,在php中,字符串有哪些表示形式,php字符串赋值,php字符串的三种定义方式,php字符串的三种定义方式,内容如对您有帮助,希望把文章链接给更多的朋友!
(PHP 4 >= 4.0.1, PHP 5)
levenshtein — 计算两个字符串之间的编辑距离
说明 int levenshtein ( string $str1 , string $str2 ) int levenshtein ( string $str1 , string $str2 , int $cost_ins , int $cost_rep , int $cost_del )编辑距离,是指两个字串之间,通过替换、插入、删除等操作将字符串str1转换成str2所需要操作的最少字符数量。 该算法的复杂度是 O(m*n),其中 n 和 m 分别是str1 和str2的长度 (当和算法复杂度为O(max(n,m)**3)的similar_text()相比时,此函数还是相当不错的,尽管仍然很耗时。)。
在最简单的形式中,该函数只以两个字符串作为参数,并计算通过插入、替换和删除等操作将str1转换成str2所需要的操作次数。
第二种变体将采用三个额外的参数来定义插入、替换和删除操作的次数。此变体比第一种更加通用和适应,但效率不高。
参数str1
求编辑距离中的其中一个字符串
str2求编辑距离中的另一个字符串
cost_ins定义插入次数
cost_rep定义替换次数
cost_del定义删除次数
返回值此函数返回两个字符串参数之间的编辑距离,如果其中一个字符串参数长度大于限制的个字符时,返回-1。
范例
Example #1 levenshtein() 例子:
<?php//输入拼写错误的单词$input='carrrot';//要检查的单词数组$words=array('apple','pineapple','banana','orange','radish','carrot','pea','bean','potato');//目前没有找到最短距离$shortest=-1;//遍历单词来找到最接近的foreach($wordsas$word){//计算输入单词与当前单词的距离$lev=levenshtein($input,$word);//检查完全的匹配if($lev==0){//最接近的单词是这个(完全匹配)$closest=$word;$shortest=0;//退出循环;我们已经找到一个完全的匹配break;}//如果此次距离比上次找到的要短//或者还没找到接近的单词if($lev<=$shortest||$shortest<0){//设置最接近的匹配以及它的最短距离$closest=$word;$shortest=$lev;}}echo"Inputword:$inputn";if($shortest==0){echo"Exactmatchfound:$closestn";}else{echo"Didyoumean:$closest?n";}?>以上例程会输出:
参见soundex() - Calculate the soundex key of a string similar_text() - 计算两个字符串的相似度 metaphone() - Calculate the metaphone key of a string
PHP字符串函数md5()的用法 md5(PHP4,PHP5)md5计算字符串的MD5散列值说明stringmd5(string$str[,bool$raw_output=false])使用RSA数据安全公司的MD5报文算法计算str的MD5散列值。参数str原始字符串。raw
PHP字符串函数md5_file()的用法 md5_file(PHP4=4.2.0,PHP5)md5_file计算指定文件的MD5散列值说明stringmd5_file(string$filename[,bool$raw_output=false])使用RSA数据安全公司的MD5报文算法计算filename文件的MD5
PHP字符串函数ltrim()的用法 ltrim(PHP4,PHP5)ltrim删除字符串开头的空白字符(或其他字符)说明stringltrim(string$str[,string$charlist])删除字符串开头的空白字符(或其他字符)参数str输入的
标签: php字符串操作函数
本文链接地址:https://www.jiuchutong.com/biancheng/278856.html 转载请保留说明!上一篇:PHP字符串函数metaphone()的用法(php字符串函数大全)
下一篇:PHP字符串函数md5()的用法(php字符串函数有哪些)
友情链接: 武汉网站建设