본문 바로가기

PHP - 특정 태그 및 문자열 추출, 제거

반응형

TEXTAREA 제거

$content = preg_replace("!<TEXTAREA(.*?)>!is","[TEXTAREA]",$content);
$content = preg_replace("!</TEXTAREA(.*?)>!is","[/TEXTAREA]",$content);

script 제거

$str=preg_replace("!<script(.*?)<\/script>!is","",$str);

iframe 제거

$str=preg_replace("!<iframe(.*?)<\/iframe>!is","",$str);

meta 제거

$str=preg_replace("!<meta(.*?)>!is","",$str);

style 태그 제거

$str=preg_replace("!<style(.*?)<\/style>!is","",$str);

연속된 공백 1개로

$str=preg_replace("/\s{2,}/"," ",$str);

태그안에 style= 속성 제거

$str=preg_replace("/ zzstyle=([^\"\']+) /"," ",$str); // style=border:0... 따옴표가 없을때
$str=preg_replace("/ style=(\"|\')?([^\"\']+)(\"|\')?/","",$str); // style="border:0..." 따옴표 있을때

태그안의 width=, height= 속성 제거

$str=preg_replace("/ width=(\"|\')?\d+(\"|\')?/","",$str);
$str=preg_replace("/ height=(\"|\')?\d+(\"|\')?/","",$str);

img 태그 추출 src 추출

preg_match("/<img[^>]*src=[\"']?([^>\"']+)[\"']?[^>]*>/i",$str,$RESULT);
preg_match_all("/<img[^>]*src=[\"']?([^>\"']+)[\"']?[^>]*>/i",$str,$RESULT);

호스트 추출

preg_match("/^(http:\/\/)?([^\/]+)/i","http://www.naver.com/index.php",$matches);
$host = $matches[2];
echo $matches[0]."<br>";
echo $matches[1]."<br>";
echo $matches[2]."<br>";
반응형

댓글


Copyright ⓒ SmartWeb All rights reserved.