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);
를 공백으로 변환
$str=str_replace(" "," ",$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>";
?>
[출처] PHP 정규식을 활용한 태그 및 특정 문자열 제거 및 추출 방법|작성자 콩이
게시글 목록
| 번호 | 제목 |
|---|---|
| 716 | |
| 715 |
정규표현식
Form 정규식을 이용한 유효성 검사
|
| 714 | |
| 713 | |
| 712 |
정규표현식
정규식 패턴(정규표현식)들 모음
|
| 711 |
정규표현식
PHP 정규식 한글만 추출
|
| 710 |
정규표현식
PHP 정규식 정리
3
|
| 709 |
정규표현식
간단한 정규식 사용법
|
| 708 |
정규표현식
php 주석제거 정규식
|
| 707 |
정규표현식
url 주소에서 도메인 추출하기
|
| 706 |
정규표현식
정규식 기초
|
| 695 | |
| 689 | |
| 688 | |
| 687 | |
| 656 | |
| 651 | |
| 643 | |
| 638 | |
| 633 | |
| 606 | |
| 593 | |
| 584 | |
| 576 | |
| 562 | |
| 556 |
도로명주소
다음 우편번호 api
2
|
| 539 | |
| 538 | |
| 537 | |
| 536 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기