일반적으로이 작업을 수행합니다.멀티 바이트 문자열에서 "abc123def"를 "abc 123 def"로 대체하십시오.
$str = preg_replace('#(\d+)#', ' $1 ', $str);
나는 그것이 내가 패턴에 소문자 "U"수정을 추가하고 내가 잘 될 것이라고 생각 UTF-8 될 줄 알았다면. 하지만 utf-8이 네이티브 문자 집합을 사용하는 경우보다 2 배, 어떤 경우에는 3 배의 저장 공간을 사용하기 때문에 utf-8로 응용 프로그램을 제한하지 않기 위해 노력하고 있습니다.
따라서 저는 좋아하는 preg_ 함수를 사용하지 않으려 고합니다.
대부분의 것들은 지금까지는 상당히 간단하지만 나는 보통 "\ d"와 같은 preg_에서 문자 클래스를 사용하는 대체품에 조금 붙어 있습니다.
내가 궁극적으로 여기서 끝내는 것은 모든 기본 기능이 계속해서 인코딩이 변경 될 수있는 방식으로 mb_ 함수를 사용하는 방식으로 스크립트를 계속 사용하는 것이라고 생각합니다. 활성 인코딩이 utf-8 인 경우에만 사용할 수 있도록 몇 가지 고급 기능을 플래그 지정합니다. – joebert