首頁 > php教程 > PHP源码 > 查询相似度最高的字符串

查询相似度最高的字符串

PHP中文网
發布: 2016-05-25 17:12:35
原創
1691 人瀏覽過

根据传入的字符串和数组,返回数组中相似度最高的字符串

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(&#39;AL&#39;=>"Alabama",&#39;AK&#39;=>"Alaska",&#39;AZ&#39;=>"Arizona",&#39;AR&#39;=>"Arkansas",&#39;CA&#39;=>"California",&#39;CO&#39;=>"Colorado",&#39;CT&#39;=>"Connecticut",&#39;DE&#39;=>"Delaware",&#39;DC&#39;=>"District Of Columbia",&#39;FL&#39;=>"Florida",&#39;GA&#39;=>"Georgia",&#39;HI&#39;=>"Hawaii",&#39;ID&#39;=>"Idaho",&#39;IL&#39;=>"Illinois",&#39;IN&#39;=>"Indiana",&#39;IA&#39;=>"Iowa",&#39;KS&#39;=>"Kansas",&#39;KY&#39;=>"Kentucky",&#39;LA&#39;=>"Louisiana",&#39;ME&#39;=>"Maine",&#39;MD&#39;=>"Maryland",&#39;MA&#39;=>"Massachusetts",&#39;MI&#39;=>"Michigan",&#39;MN&#39;=>"Minnesota",&#39;MS&#39;=>"Mississippi",&#39;MO&#39;=>"Missouri",&#39;MT&#39;=>"Montana",&#39;NE&#39;=>"Nebraska",&#39;NV&#39;=>"Nevada",&#39;NH&#39;=>"New Hampshire",&#39;NJ&#39;=>"New Jersey",&#39;NM&#39;=>"New Mexico",&#39;NY&#39;=>"New York",&#39;NC&#39;=>"North Carolina",&#39;ND&#39;=>"North Dakota",&#39;OH&#39;=>"Ohio",&#39;OK&#39;=>"Oklahoma",&#39;OR&#39;=>"Oregon",&#39;PA&#39;=>"Pennsylvania",&#39;RI&#39;=>"Rhode Island",&#39;SC&#39;=>"South Carolina",&#39;SD&#39;=>"South Dakota",&#39;TN&#39;=>"Tennessee",&#39;TX&#39;=>"Texas",&#39;UT&#39;=>"Utah",&#39;VT&#39;=>"Vermont",&#39;VA&#39;=>"Virginia",&#39;WA&#39;=>"Washington",&#39;WV&#39;=>"West Virginia",&#39;WI&#39;=>"Wisconsin",&#39;WY&#39;=>"Wyoming");


$input_state = &#39;Wiscsin&#39;;
$state = closest_word($input_state ,array_values($united_state_list));
echo $state;
登入後複製

 以上就是查询相似度最高的字符串的内容,更多相关内容请关注PHP中文网(www.php.cn)!


相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
最新問題
熱門推薦
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板