728x90
juso.go.kr 사이트에 Python selenium 으로 조회하여 반환받은 결과를 DB에 넣고자 하는데 지번주소 세부주소까지 나오는 데이터가 있다.
이를 파싱처리는 코드를 PHP로 구현하고 적어둔다.
주소를 살펴보다 확인 결과 세종로 같은 경우가 빠져있다.
<?php
ini_set("display_startup_errors", 1);
ini_set("display_errors", 1);
error_reporting(E_ALL);
$address = '경기도 평택시 안중읍 안중리 산 69-7번지';
$address = '인천광역시 강화군 화도면 사기리 502-1번지';
$address = '경기도 부천시 소사구 괴안동 105-3 역곡현대아파트2차';
$address = '경기도 부천시 오정구 여월동 329 부천소방서 여월119안전센터';
preg_match('/(.+?)동\s/', $address,$out);
if(!empty($out) && strlen($out[0])>0) {
$jusoDong = preg_replace("/\s{2,}/"," ",$out[0]);
$str = explode($out[0],$address);
$vout = explode(" ",$str[1]);
$jiAddress = $jusoDong.' '.$vout[0];
$jiAddress = preg_replace("/\s{2,}/"," ",$jiAddress);
echo $jiAddress.'<br/>';
} else {
preg_match('/(.+?)가\s/', $address,$out);
if(!empty($out) && strlen($out[0])>0) {
$jusoDong = preg_replace("/\s{2,}/"," ",$out[0]);
echo $jusoDong.'<br/>';
} else {
preg_match('/(.+?)[읍,면]\s/', $address,$out);
if(!empty($out) && strlen($out[0])>0) {
$str = explode($out[0],$address);
preg_match('/(.+?)리\s/', $str[1],$vout);
if(!empty($vout) && strlen($vout[0])>0) {
$jusoDong = trim($out[0].' '.$vout[0]);
$jusoDong = preg_replace("/\s{2,}/"," ",$jusoDong);
echo $jusoDong.'<br/>';
} else {
echo $address.'<br/>';
}
}
}
}
?>
|
728x90
'Web 프로그램 > JSON, 파싱 다루기' 카테고리의 다른 글
없는 지번 주소 (0) | 2024.03.23 |
---|---|
PHP 네이버 날씨정보 파싱(대구와 부산) (0) | 2019.02.06 |
PHP Simple HTML DOM Parser 를 활용한 네이버 날씨정보 파싱 (3) | 2019.02.06 |
PHP json_encode 를 jQuey에서 처리하는 걸 파헤져봤다. (0) | 2019.01.25 |
PHP json_encode로 전달받은 jQuery JSON 데이터를 Array 파싱처리 (0) | 2019.01.24 |