php查詢相似度最高的字符串的方法
更新時間:2015年03月12日 10:36:16 作者:pyawen
這篇文章主要介紹了php查詢相似度最高的字符串的方法,涉及php操作字符串及數(shù)組實現(xiàn)相似度算法的技巧,具有一定參考借鑒價值,需要的朋友可以參考下
本文實例講述了php查詢相似度最高的字符串的方法。分享給大家供大家參考。具體如下:
根據(jù)傳入的字符串和數(shù)組,返回數(shù)組中相似度最高的字符串
1. PHP代碼如下:
function closest_word($input, $words) { $shortest = -1; foreach ($words as $word) { $lev = levenshtein($input, $word); if ($lev == 0) { $closest = $word; $shortest = 0; break; } if ($lev <= $shortest || $shortest < 0) { $closest = $word; $shortest = $lev; } } return $closest; }
2. 代碼示例如下:
// 根據(jù)傳入的州名(可能客戶有輸錯),返回相似度最高的州名稱 $united_state_list = array( 'AL'=>"Alabama", 'AK'=>"Alaska", 'AZ'=>"Arizona", 'AR'=>"Arkansas", 'CA'=>"California", 'CO'=>"Colorado", 'CT'=>"Connecticut", 'DE'=>"Delaware", 'DC'=>"District Of Columbia", 'FL'=>"Florida", 'GA'=>"Georgia", 'HI'=>"Hawaii", 'ID'=>"Idaho", 'IL'=>"Illinois", 'IN'=>"Indiana", 'IA'=>"Iowa", 'KS'=>"Kansas", 'KY'=>"Kentucky", 'LA'=>"Louisiana", 'ME'=>"Maine", 'MD'=>"Maryland", 'MA'=>"Massachusetts", 'MI'=>"Michigan", 'MN'=>"Minnesota", 'MS'=>"Mississippi", 'MO'=>"Missouri", 'MT'=>"Montana", 'NE'=>"Nebraska", 'NV'=>"Nevada", 'NH'=>"New Hampshire", 'NJ'=>"New Jersey", 'NM'=>"New Mexico", 'NY'=>"New York", 'NC'=>"North Carolina", 'ND'=>"North Dakota", 'OH'=>"Ohio", 'OK'=>"Oklahoma", 'OR'=>"Oregon", 'PA'=>"Pennsylvania", 'RI'=>"Rhode Island", 'SC'=>"South Carolina", 'SD'=>"South Dakota", 'TN'=>"Tennessee", 'TX'=>"Texas", 'UT'=>"Utah", 'VT'=>"Vermont", 'VA'=>"Virginia", 'WA'=>"Washington", 'WV'=>"West Virginia", 'WI'=>"Wisconsin", 'WY'=>"Wyoming" ); $input_state = 'Wiscsin'; $state = closest_word($input_state ,array_values($united_state_list)); echo $state;
希望本文所述對大家的php程序設計有所幫助。
您可能感興趣的文章:
- 如何使用php繪制在圖片上的正余弦曲線
- PHP中計算字符串相似度的函數(shù)代碼
- PHP實現(xiàn)的簡易版圖片相似度比較
- 關于PHP的相似度計算函數(shù):levenshtein的使用介紹
- PHP改進計算字符串相似度的函數(shù)similar_text()、levenshtein()
- 使用PHP similar text計算兩個字符串相似度
- php計算兩個整數(shù)的最大公約數(shù)常用算法小結
- php數(shù)字游戲 計算24算法
- php編寫的抽獎程序中獎概率算法
- php 大數(shù)據(jù)量及海量數(shù)據(jù)處理算法總結
- PHP大轉盤中獎概率算法實例
- PHP數(shù)據(jù)分析引擎計算余弦相似度算法示例
相關文章
[企業(yè)公眾號]升級到[企業(yè)微信]之后發(fā)送消息失敗的解決方法
這篇文章主要介紹了[企業(yè)公眾號]升級到[企業(yè)微信]之后發(fā)送消息失敗的解決方法,涉及微信接口的修改相關操作,需要的朋友可以參考下2017-06-06PHP5.5基于mysqli連接MySQL數(shù)據(jù)庫和讀取數(shù)據(jù)操作實例詳解
這篇文章主要介紹了PHP5.5基于mysqli連接MySQL數(shù)據(jù)庫和讀取數(shù)據(jù)操作,結合實例形式詳細分析了php5.5使用mysqli連接、讀取mysql數(shù)據(jù)庫,以及PDO預處理相關操作技巧,需要的朋友可以參考下2019-02-02原生JavaScript+PHP多圖上傳實現(xiàn)示例
這篇文章主要為大家介紹了原生JavaScript+PHP多圖上傳實現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-08-08