2012-12-03 4 views
1

내가 실수로 다음과 같은 코드를 포함 한 내 사이트 전반에 걸쳐 많은 경우이 : 나는/광범위하게 발견 할이에 그 코드를 설정하는 교체해야드림위버 정규식 찾기 및 정규 표현식으로 교체

if (isset(htmlspecialchars($_GET['u']))) 

를 :

if (isset($_GET['u'])) 

나는 정규 표현식을 찾기 위해 아래의 코드를 사용하려고하지만, 나는 반드시 htmlspecialchars와 괄호를 포함하지 않는 경우에만납니다.

  • 찾기 : 반드시 htmlspecialchars (\ $ _ GET의 [ '([^'] *) '])
  • 교체 : $ _GET ['$ 1 ']

어떤 아이디어? 감사!

답변

2

()[]을 이스케이프 처리해야합니다.

isset\(htmlspecialchars\(\$_GET\['([^']*)'\]\)\) 
+0

@ 서브 루틴, 정규 표현식 구문 오류 - 일치하지 않음)가 정규식 – Brandon

+0

에 있습니다. 제 편집을 참조하십시오. – subroutines

+0

괜찮 았지만 모든 것을 컴파일 할 수는 없습니다. 어떻게 이드가 이것을 찾을 수 있겠습니까? isset (htmlspecialchars \ (\ $ _ GET \ [(^ '] *)'\] \) – Brandon