2012-09-19 1 views
0

나는 가능하다면 질문 기호 "?"를 대체 할 reg 표현식을 사용합니다. " '"는 내 문자열에서 "="기호가 뒤 따르지 않는 곳에 있습니까?PHP preg_replace를 사용하여 제거 하시겠습니까? 오직 "="기호 다음에 오는 것이 아닌 곳

이 뭔가? 그러나 이것은 영원히 = 남아으로

가 끝나야 :?이 뭔가 '입니다

,하지만 영원히

감사

= 남아

+0

이것은 [룩어]을 호출 (http://us.php.net/manual/en/regexp.reference.assertions.php). – DCoder

+2

특히 표현식을 * is * 뒤에 등호가 오는 모든 문자와 일치 시키려고합니다. 그래서 당신은 * 네가 * 선견자를 원합니다. – Jon

답변

0

그냥 .. 정규식이없는 간단한 하나 (정규식을 모르겠다 :() ... : p

$string = "this is something?, but this will remain?=forever"; 
$my_secret_replace = "THISISANYTHINGWHICHWILLNOTINSTRING_OR_ANYRANDOMNUMBER"; 



$temp_string = str_replace("?=",$my_secret_replace,$string); 
$temp_string = str_replace("?","'",$temp_string); 
$final_string = str_replace($my_secret_replace,"?=",$temp_string); 
2

이것은 부정적 예측을 이용하여 간단 사용

\?(?!=) 
0
$string = "String contains ? and ?= contains too?=?"; 
echo preg_replace("/\?([^=]|$)/", "'\\1", $string); 
+0

감사합니다.이 방법이 효과적이며 부정적인 미리보기 사용에 대한 정보 – usermomo

관련 문제