> 백엔드 개발 > PHP 문제 > PHP의 Trim() 함수를 사용하여 중국어 공백을 제거하는 방법

PHP의 Trim() 함수를 사용하여 중국어 공백을 제거하는 방법

PHPz
풀어 주다: 2023-03-21 10:42:02
원래의
1944명이 탐색했습니다.

PHP 프로그램을 개발할 때 문자열을 처리해야 하는 경우가 종종 있습니다. 문자열 처리에서는 중국어 공백을 제거해야 하는 경우가 많습니다. 그렇다면 PHP를 사용하여 중국어 공백을 제거하는 방법은 무엇입니까? 이번 글에서는 PHP의 Trim() 함수를 이용하여 중국어 공백을 제거하는 방법을 소개하겠습니다.

1. 중국 공간이란?

중국어 공백은 입력 방법에 따라 다르게 나타나지만 기본적으로는 모두 키보드의 스페이스바를 사용하여 입력할 수 있는 자리 표시자 또는 반자 기호입니다. 중국어 공백은 프로그래밍 언어 관점에서 볼 때 문자열이지만 일반 공백과 다르며 문자처럼 1바이트를 차지하지만 ASCII 코드가 일반 공백과 다릅니다.

2. PHP를 사용하여 문자열 양쪽 끝의 한자 공백을 제거하는 방법

PHP 내장 기능을 사용하여 문자열 양쪽 끝의 한자 공백을 제거하는 방법에는 일반적으로 두 가지 방법이 있습니다.

방법 1: Trim() 함수 사용

PHP 언어는 공백, 탭, 개행 등을 포함하여 문자열 양쪽 끝에 있는 공백 문자를 제거할 수 있는 Trim() 함수를 제공합니다. 그러나 기본적으로 이 함수는 ASCII 코드 값 범위 내의 공백 문자만 제거할 수 있으며 중국어 공백에 대해서는 아무 작업도 수행할 수 없습니다.

중국어 공백 문제를 해결할 때, Trim() 함수의 기능을 확장할 수 있습니다. 정규식을 사용하여 중국어 공백을 일치시키고 Trim() 함수를 통해 제거할 수 있습니다. 구체적인 코드는 다음과 같습니다.

function chn_trim($str){
    return preg_replace('/^[\p{Zs}\p{Zp}]+|[\p{Zs}\p{Zp}]+$/u', '', $str);
}
로그인 후 복사

위 코드에서는 유니코드에서 공백과 단락 구분 기호를 각각 일치시키는 데 사용되는 문자 클래스 p{Zs} 및 p{Zp}를 사용합니다. 수식자 /u를 추가한 후, 정확할 수 있습니다. 중국어 공백을 인식합니다.

이 방법은 중국어 공백 문제를 효과적으로 해결할 수 있지만, 중국어 공백을 제거해야 하는 문자열마다 chn_trim() 함수를 호출해야 하고 함수를 다시 패키지해야 하므로 간결하지 않다는 단점이 있습니다. .

방법 2: PHP의 전역 함수 사용

코드를 더욱 표준화하고 간결하게 만들기 위해 PHP의 전역 함수에 문자열 양쪽 끝의 중국어 공백을 전역적으로 제거하는 함수를 추가할 수 있습니다. 구체적인 코드는 다음과 같습니다.

if(!function_exists('trim_cn')){
    function trim_cn($string){
        $string = preg_replace('/^[\p{Zs}\p{Zp}]+|[\p{Zs}\p{Zp}]+$/u', '', $string);
        return trim($string);
    }
}
로그인 후 복사

위 코드에서는 먼저 방법 1과 동일한 정규식을 사용하고, preg_replace() 함수를 사용하여 문자열 양쪽 끝의 중국어 공백을 제거합니다. 이 함수를 전역 함수로 사용해야 하므로 if(!function_exists('trim_cn')) 조건부 판단을 사용하여 함수가 이미 존재하는지 확인합니다. 함수가 존재하지 않으면 함수를 정의합니다. 그렇지 않으면 처리가 수행되지 않습니다. .

이 방법에는 특정 보편성이 있습니다. 중국어 공백에서 제거할 각 문자열에 대해 더 이상 사용자 정의 함수 chn_trim()을 호출할 필요가 없습니다. 이 함수를 전역적으로 정의함으로써 코드의 양을 줄이고 코드의 가독성과 유지 관리성을 향상시킬 수 있습니다.

3. 요약

이 글에서는 중국어 공백을 제거하는 두 가지 방법을 소개합니다. 첫 번째 방법은 PHP에 내장된 Trim() 함수를 확장하고 정규식을 사용하여 문자열 양쪽 끝에 있는 중국어 공백을 제거하는 것입니다. 두 번째 방법은 전역 함수에 Trim_cn() 함수를 추가하고, 함수 존재 여부를 판단하여 전역 함수를 정의한 후, 문자열 양쪽 끝의 한자 공백을 제거하는 것이다.

물론 실제 프로그래밍에서는 다른 방법을 사용하여 중국어 공백을 제거할 수도 있습니다. 문자열을 처리할 때는 간결하고 읽기 쉬운 코드의 원칙을 따라야 하며, 코드의 유지 관리성을 보장하기 위해 지나치게 복잡한 코드를 사용하지 마십시오.

위 내용은 PHP의 Trim() 함수를 사용하여 중국어 공백을 제거하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿