2015-01-29 2 views
0
내가 *와 자본 E 또는 소문자 e 중의 모든 항목을 대체 할

: **** 4 개 개의 문자가 있기 때문에 :PHP 정규식 + (플러스) 메타 문자

echo preg_replace("/[eE]+/", "*", "eeEE");

내가 할 결과를 예상 subjectpreg_replace()입니다.

전류 출력은 *입니다.

예상대로 작동하지 않는 이유는 무엇입니까? 나는 무엇을 놓치고 있습니까? 분명히 나는 ​​무언가를 이해하지 못한다.

답변

2

이 특별한 경우에는 str_ireplace("e","*","eeEE"); 만 사용합니다.

그러나, 당신의 오해는 정규식 말한다 "하나의 * 하나 이상의 에스, 가능한 많은 교체"입니다. 한 문자를 다른 한 문자로 바꾸므로 여기에 +이 필요하지 않습니다.

+0

감사합니다. 위의 함수처럼 정교한 함수를 사용하지 않으면 순수 정규식 패턴은 무엇입니까? –

+0

'/ e/i'는 간단한 정규 표현식이됩니다. –