2012-08-30 2 views
1

내가 가지고있는 이러한 샘플 문자열"<", ">"과 문자열 사이에있는 모든 텍스트를 제거하는 방법은 무엇입니까?

"<textcolor='red'><h1>FAILED - NOT ENOUGH STEPS PERFORMED</h1></textcolor>" 
"<b style='color:white; background-color:red'>FAILED</b>" 

나는 내가 작음과 [초과 징후를 치우는 추측이

"FAILED - NOT ENOUGH STEPS PERFORMED" 
"FAILED" 

를 얻을 수 있도록 내가 거기에 모든 HTML 서식을 제거하고 싶습니다과 그들 사이에 어떤 것도 할 수 있습니다. 나는 이것을 위해 preg_replace를 사용할 수 있다는 것을 알고 있지만 어떤 형식을 사용할 지 정확히 알지 못합니다.

+2

* (참조) * http://php.net/strip_tags – Gordon

답변

8

내가의 라인을 따라 뭔가 생각했다 : 그 스타일은 부모 요소로부터 상속되지 않는 한, 어떠한 스타일없이

FAILED - NOT ENOUGH STEPS PERFORMED 

:

$code = "<textcolor='red'><h1>FAILED - NOT ENOUGH STEPS PERFORMED</h1></textcolor>"; 
echo strip_tags($code); 

코드는 위에 출력 것이라고 언급했다.

strip_tags function은 HTML의 모든 태그를 제거하는 가장 쉽고 효과적인 방법입니다. preg_replace의 목적은 'a'또는 무엇인가로 시작하는 것을 변경하는 것과 같이 다양한 기호를 제거하거나 변경하는 것이지만 strip_tags의 목적은 HTML 입력을 특히 위생적으로 만드는 것입니다. 어쨌든 가장해야 할 일입니다.

+0

감사합니다! 이것은 하루 종일 정규 표현식 패턴을 사용하는 것보다 ** 많이 ** 쉬워졌습니다! – mtijn

3

strip_tags() 가지 방법이 있습니다. preg_replace가이를 수행 할 수는 있지만 신뢰할 수있게 만드는 것은 다소 복잡합니다.

관련 문제