Skill/PHP

PHP - 휴대폰 번호 짜르기 / 하이픈(-) 넣기 : preg_replace() 함수

2023. 12. 8.
목차

닌니디자인 PHP 썸네일

 

preg_replace()

문자열 내에서 정규 표현식을 사용하여 특정 패턴을 찾아 다른 문자열로 바꾸는(대체하는) 함수입니다.

preg_replace(
    string|array $pattern,
    string|array $replacement,
    string|array $subject,
    int $limit = -1,
    int &$count = null
): string|array|null

// preg_replace(정규 표현식 패턴, 바꿀 문자열, 대상 문자열[, 대체 작업의 최대 횟수[, 카운트]]);

 

 

예시

preg_replace("/([0-9]{3})([0-9]{3,4})([0-9]{4})$/","\\1-\\2-\\3" ,$tel)


// 번호 타입별 하이픈 추가
function tel_hyphen($tel) {
    // 숫자 이외 제거
    $tel = preg_replace("/[^0-9]/", "", $tel);

    if(substr($tel,0,2) == '02') {
        // 서울 지역번호
        return preg_replace("/([0-9]{2})([0-9]{3,4})([0-9]{4})$/", "\\1-\\2-\\3", $tel);
    } else if(strlen($tel) == '8' && (substr($tel,0,2) == '15' || substr($tel,0,2) == '16' || substr($tel,0,2) == '18')) {
        // 지능망 번호
        return preg_replace("/([0-9]{4})([0-9]{4})$/", "\\1-\\2", $tel);
    } else if(substr($tel,0,4) == '0502') {
        // 안심번호
        return preg_replace("/([0-9]{4})([0-9]{4})([0-9]{4})$/", "\\1-\\2-\\3", $tel);
    } else {
        // 나머지
        return preg_replace("/([0-9]{3})([0-9]{3,4})([0-9]{4})$/", "\\1-\\2-\\3", $tel);
    }
}

 

 

매개변수

$pattern 필수. 정규 표현식 또는 패턴을 지정합니다.
문자열이거나 문자열이 있는 배열일 수 있습니다.
$replacement 필수. 찾은 패턴을 대체할 새로운 문자열 또는 문자열 배열을 지정합니다.
$subject 필수. 대상이 되는 문자열 또는 문자열 배열을 지정합니다.
여기에서 패턴을 찾아 대체 작업을 수행합니다.
$limit 옵션. 대체 작업의 최대 횟수를 지정합니다.
기본 값은 -1이며, 이 경우 모든 일치하는 부분이 대체됩니다.
$count 옵션. 대체 작업의 횟수를 저장하는 변수입니다.
기본 값은 null 입니다. preg_replace() 함수가 호출될 때, 이 변수에 대체 작업 횟수가 저장됩니다. 참조 변수입니다.

 

 


 

domain_verification Source
 

PHP preg_replace() 함수 - 코딩에브리바디

preg_replace() 함수는 문자열 내에서 정규 표현식을 사용하여 특정 패턴을 찾아 다른 문자열로 바꾸는(대체하는) 함수입니다. preg_replace() 함수는 복잡한 문자열 대체 작업을 수행할 수 있습니다.

codingeverybody.kr

카테고리 다른 글 더보기