>백엔드 개발 >PHP 튜토리얼 >php 문자열 교체 문제

php 문자열 교체 문제

WBOY
WBOY원래의
2016-09-12 17:44:431261검색

preg_replace 함수는 정규 표현식에 따라 일치 및 교체가 가능하며, 횟수를 지정할 수 있습니다. 이제 문자열과 같이 지정된 일치 항목의 n번째를 교체하고 싶습니다. 정규 표현식을 작성했는데, 이 문자열은 총 3번 일치할 수 있습니다. 그런 다음 두 번째 일치 항목만 바꾸려고 합니다. 어떻게 해야 합니까? PHP에 그러한 구현이 있습니까?

답글 내용:

preg_replace 함수는 정규 표현식에 따라 일치 및 교체가 가능하며, 횟수를 지정할 수 있습니다. 이제 문자열과 같이 지정된 일치 항목의 n번째를 교체하고 싶습니다. 정규 표현식을 작성했는데, 이 문자열은 총 3번 일치할 수 있습니다. 그런 다음 두 번째 일치 항목만 바꾸려고 합니다. 어떻게 해야 합니까? PHP에 그러한 구현이 있습니까?

preg_replace_callback 사용
사용방법은 매뉴얼 참조

은 교체를 처리하기 위해 다른 함수를 호출하는 preg_replace_callback으로 처리할 수 있습니다.

교체 로직을 직접 처리할 수 있습니다.

코드로 이동하세요:

<code>$i=1;
$result = preg_replace_callback('/a/',function($match)use(&$i){
    $match = $i != 2 ? $match[0] : '';
    $i++;
    return $match;
},'a1a2a3a4');
var_dump($result);</code>
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.