이 정규식에 오류가 있습니다 …
$strTmp = preg_replace('~(<\/CharacterStyleRange>(.*?)\n*</CharacterStyleRange>)~gim ' , "</CharacterStyleRange>", $strTmp);
오류
경고 : preg_replace () : 알 수없는 수정 자 ‘g’in ….
왜?
답변
g
는 암시 적입니다 preg_replace()
. 포함 할 필요가 없습니다.
답변
전역 플래그를 지정할 필요가 없습니다. 에서 문서 , 별도의 매개 변수 (이 $limit
메이크업에 교체의 수를 지정하는 데 사용되는) :
limit
각 주제 문자열의 각 패턴에 대해 가능한 최대 대체. 기본값은 -1 (제한 없음)입니다.
따라서이 매개 변수에 양수를 지정하지 않으면 기본적으로 모든 항목을 대체합니다.
$strTmp = preg_replace('~(<\/CharacterStyleRange>(.*?)\n*</CharacterStyleRange>)~im ' , "</CharacterStyleRange>", $strTmp);
답변
/
바꾸려는 문자열 의 앞에 문자 G가 있습니다.