Here is the list; 좀 더 쉽게 조회 할 수 있도록 데이터 주소 세트를 "정상화"하려고합니다.미국의 거리 및 보조 약어를 전체 길이 버전으로 번역
strtr()과 을 사용해 보았지만 제대로 작동하지 않았습니다. 다음은 테스트를위한 짧은 목록입니다.
<?php
function street_abbreviations_regex($input) {
$list = array(
' ave' => ' avenue',
' blvd' => ' boulevard',
' cir' => ' circle',
' ct' => ' court',
' expy' => ' expressway',
' fwy' => ' freeway',
' ln' => ' lane',
' pky' => ' parkway',
' rd' => ' road',
' sq' => ' square',
' st' => ' street',
' tpke' => ' turnpike',
' n' => ' north',
' e' => ' east',
' s' => ' south',
' w' => ' west',
' ne' => ' northeast',
' se' => ' southeast',
' sw' => ' southwest',
' nw' => ' northwest',
);
// $input = strtr(strtolower($input), $list);
$input = str_ireplace(array_keys($list), array_values($list), strtolower($input));
$regex_street = (preg_replace("/[^A-Za-z0-9]/", "", $input));
return $regex_street;
?>
입력 strtr에서
echo street_abbreviations_regex('10 E Union St.') . " <br>\n";
echo street_abbreviations_regex('10 E Union Street') . " <br>\n";
출력() 우리는 주소를하는 곳 나는 회사에서 일
10eastunionsouthtreet
10eastunionsouthtreetreet
구체적으로 어떤 문제가 있습니까? 원하는 출력은 무엇입니까? – Charles
출력 문자열은 동일한 주소 여야하므로 동일해야합니다. – mikeytown2
좋은 출발을 찾았습니다 : https://github.com/jhubert/normalize-us-street-address – mikeytown2