2013-12-17 6 views
2

변수에 저장된 XML 파일에서 특정 태그 </licenses> 만 제거해야합니다.PHP를 통해 문자열에서 특정 XML 태그 제거

나는이 시도했지만, 내가 예상 출력받지 못했습니다 :

<?php 

    print preg_replace("</licenses>", "", "</licenses>"); 

?> 

결과 :

<> 

그리고 놀랍게도, 다음은 모든 태그의 내용을 제거합니다

<?php 

    print preg_replace("<>", "", "</licenses>"); 

?> 

내가 생각할 수있는 것은 내가 어떻게 든 정규식 패턴이나 뭔가를 때리는 것입니다. 어떻게해야합니까?

+0

는''<' and '> [구분자로서 사용]이기 때문이다 (http://www.php.net/manual/en/regexp.reference.delimiters.php). 그 안에있는 것만 "/ 라이센스'"가 대체됩니다. –

답변

3

당신은 정규식입니다 preg_replace의 첫 번째 인수에 정규식 구분 기호를 사용할 필요가 예상대로

echo preg_replace("#</licenses>#", "", "</licenses>"); 

는 빈 문자열을 반환합니다.

+0

대단히 감사합니다! – Jamus

+0

가장 환영합니다. – anubhava

2

사용할 수 있습니다.

print preg_replace("/<\/licenses>/", "", "</licenses>"); 
+3

'<' and '>'은 특수 문자가 아니며 이스케이프 할 필요가 없습니다. –