您好,登錄后才能下訂單哦!
這篇文章主要講解了“PHP如何計算兩個字符串的匹配度”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“PHP如何計算兩個字符串的匹配度”吧!
計算兩個字符串匹配度(相似度),也就是計算兩個字符串的匹配字符的數目;PHP中內置了一個函數可以實現各個功能,那就是similar_text()函數,下面我們來介紹一下這個函數。
首先我們來看一個小例子。
<?php header("Content-type:text/html;charset=utf-8"); $str1="Hello php!"; $str2="Hello java!"; echo "字符串 “'$str1'” 和字符串 “'$str2'” 的相似度為: ".similar_text($str1,$str2); ?>
看這個代碼,你們覺得這個結果會是什么?我們來分析一下:在兩個字符串中有7個相同的字符:“Hello”、空格、“!”。
那么兩個字符串的相似度應該為“7”,對不對?我們來看一下答案。
是的,沒錯。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
的用法。
<?php header("Content-type:text/html;charset=utf-8"); $str1="Hello php!"; $str2="Hello java!"; similar_text($str1,$str2,$percent); echo "字符串 “'$str1'” 和字符串 “'$str2'” 的相似度為: ".$percent; ?>
輸出結果:
利用similar_text()函數,可以用來做模糊搜索的功能,或者其他需要模糊匹配的功能。但因為對漢字的處理規則不同,similar_text() 函數對中文計算不是很不準確。
感謝各位的閱讀,以上就是“PHP如何計算兩個字符串的匹配度”的內容了,經過本文的學習后,相信大家對PHP如何計算兩個字符串的匹配度這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。