PHP如何计算两个字符串的匹配度(php,编程语言)

时间:2024-04-29 03:07:26 作者 : 石家庄SEO 分类 : 编程语言
  • TAG :

计算两个字符串匹配度(相似度),也就是计算两个字符串的匹配字符的数目;PHP中内置了一个函数可以实现各个功能,那就是similar_text()函数,下面我们来介绍一下这个函数。

首先我们来看一个小例子。

<?phpheader("Content-type:text/html;charset=utf-8");$str1="Hellophp!";$str2="Hellojava!";echo"字符串“'$str1'”和字符串“'$str2'”的相似度为:".similar_text($str1,$str2);?>

看这个代码,你们觉得这个结果会是什么?我们来分析一下:在两个字符串中有7个相同的字符:“Hello”、空格、“!”。

那么两个字符串的相似度应该为“7”,对不对?我们来看一下答案。

PHP如何计算两个字符串的匹配度

是的,没错。similar_text()函数统计了字符串$str1$str2中匹配字符的数目,并返回匹配字符数目。

那我们具体看看这个函数吧。

similar_text() 函数计算两个字符串的相似度,返回匹配字符数目(数字形式);也能以百分比的形式返回两个字符串的相似度。

看看它的语法格式:

similar_text($string1,$string2,[$percent])

可以看出,similar_text() 函数接受3个参数:2个必需参数$string1$string2,1个可省略的参数$percent。通过上面的例子,2个必需参数我们知道它们的意思,下面来聊聊可省略的参数$percent

参数$percent是用于指定供存储百分比相似度的变量名。similar_text() 函数设置了该参数,就可以能以百分比的形式返回两个字符串的相似度。

下面通过代码示例来看看参数$percent的用法。

<?phpheader("Content-type:text/html;charset=utf-8");$str1="Hellophp!";$str2="Hellojava!";similar_text($str1,$str2,$percent);echo"字符串“'$str1'”和字符串“'$str2'”的相似度为:".$percent;?>

输出结果:

PHP如何计算两个字符串的匹配度

利用similar_text()函数,可以用来做模糊搜索的功能,或者其他需要模糊匹配的功能。但因为对汉字的处理规则不同,similar_text() 函数对中文计算不是很不准确。

 </div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
本文:PHP如何计算两个字符串的匹配度的详细内容,希望对您有所帮助,信息来源于网络。
上一篇:Java中super和extends的作用是什么下一篇:

13 人围观 / 0 条评论 ↓快速评论↓

(必须)

(必须,保密)

阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18