답변 3개 / 댓글 2개
채택된 답변
+20 포인트
특수문자를 스페이스로 변경
탭 개행 스페이스_여러개 등등을 스페이스 하나로 변경하고
맨마지막에 스페이스를 더미로 붙여준다음
동[스페이스] 를 preg_match 하면 ... 될까요?
Copy
<?php
$arr = array(
'연수동 1111번지',
'인천 연수구 연수동 1111번지',
'울산 남구 달삼로 111로 (삼산동)',
'울산 남구 달동 333번지',
'울산 남구 달동달 333번지',
'울산 남구 달동달 333번지(달동)',
'울산 남구 달동',
'울산 남구 달동333번지',
);
echo '<pre>';
$pattern = array('/[^A-Za-z0-9가-힣\s]/', '/[\t\n\r\s]+/');
$replacement = array(' ', ' ');
foreach ($arr as $str) {
$str = preg_replace($pattern, $replacement, $str.PHP_EOL);
preg_match_all('/[^\s]+동[\s]/', $str, $matches);
print_r($matches);
echo trim($matches[0][0]).PHP_EOL;
echo PHP_EOL;
}
데이터가 일정한 규칙이 있는게 아니라 힘들지안을까싶네요
동이라는 글자를 찾아서
동 앞으로 띄어쓰기 전까지 가져오도록 해보세요
원하는결과가 나올지는 모르겠네요
답변을 작성하려면 로그인이 필요합니다.
어떤 함수를 써야될까요 ㅜ