本文实例讲述了php查询相似度最高的字符串的方法。具体如下:
根据传入的字符串和数组,返回数组中相似度最高的字符串
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. 代码示例如下:
// 根据传入的州名(可能客户有输错),返回相似度最高的州名称$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_html' target='_blank'>values($united_state_list));echo $state;
总结:以上就是本篇文的全部内容,希望能对大家的学习有所帮助。
相关推荐:
PHP版QQ登录口
PHP的三元运算符
php针对数组的定义、遍历及删除
以上就是php操作字符串及数组实现相似度算法的详细内容,PHP教程
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。
新闻热点
疑难解答